【问题标题】:How to maintain History for Truncate/Load Table in Oracle?如何在 Oracle 中维护截断/加载表的历史记录?
【发布时间】:2021-09-16 02:49:02
【问题描述】:

对于对源表所做的每一次更改,我都必须将历史记录保存到目标表中。

【问题讨论】:

  • 您的图片和描述与您的问题的标题不匹配...您要跟踪数据更改或表结构更改?
  • @thatjeffsmith,我想跟踪源表中的数据更改。如果有插入,则应将新行插入到我的目标表中;如果现有记录有更新,则应将新更改作为新记录插入到目标表中,活动标志 = Y,旧行应标记为 N
  • Oracle 内置了 auditing.feature 可以为您执行此操作,只需打开它
  • 另外,Oracle SQL developer 只是访问数据库的 GUI 工具。我假设您想跟踪 oracle 数据库本身的变化。每个人都会理解您的问题,但您确实应该使用正确的术语。

标签: sql oracle history-tables


【解决方案1】:

您是否尝试过将Materialized View 关联到您的表以进行跟踪?

您可以使用物化视图日志。所有更改都将保存在那里:

https://oracle-base.com/articles/misc/materialized-views

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-25
    相关资源
    最近更新 更多