创建Oracle Trigger以将UPDATE上的单个记录复制/ INSERT到新表中?

时间:2015-05-01 18:26:41

标签: sql database oracle oracle11g toad

我正在尝试在我的Oracle数据库中设置一个触发器,每次在Table1中更新记录时都会触发该触发器。当触发器执行时(在?之后),我想复制/插入记录中已更新为:old的所有字段的HistoryTable记录值。两个表之间的唯一区别是包含[Table1_ID]字段以引用该特定Table1.[ID]的所有历史记录:

[Table1] - [ID][col1][col2][col3][etc.]
[HistoryTable] - [ID][Table1_ID][col1][col2][col3][etc.]

有谁知道如何设置它?我试图编写如下所示的脚本,但到目前为止没有运气,并且还没有想出如何在TOAD gui中准确指定动作。我已经有了Sequence/Trigger对,因此每次插入新记录时,[ID]的{​​{1}}字段都会自动递增。

HistoryTable

输出窗口出现CREATE OR REPLACE TRIGGER SCHEMA1.ITEM_UPDATED_TRG AFTER UPDATE ON TABLE1 FOR EACH ROW DECLARE BEGIN INSERT INTO SCHEMA1.HISTORYTABLE (Table1_ID, col1, col2, col3, etc.) VALUES (:OLD.ID, :OLD.col1, :OLD.col2, :OLD.col3, :OLD.etc); END; ShOW ERRORS; ...?

0 个答案:

没有答案