我有两个相同的表并将数据从主表(表1)复制到备份表(表2),我有以下触发器:
CREATE OR REPLACE TRIGGER copy_Table1_to_Table2 AFTER INSERT ON table1
FOR EACH ROW
BEGIN
INSERT INTO TABLE2
(col1, col2, ..., coln)
VALUES
(:NEW.col1, :NEW.col2, ..., :NEW.coln);
END;
问题1: 这适用于将数据从一个表复制到另一个表。如果我必须将20个不同表中的数据复制到20个备份表(相同),是否可以使用参数作为表名和列名并使用相同的触发器而不是编写20个不同的触发器的包或函数?
如果是,想知道代码的外观。感谢任何帮助。
问题2: 要将备份表(表2)作为主表(表1)的克隆,我是否必须先截断备份表?这样就不会插入重复值(假设主表没有重复项)。
从技术上讲,我将批量数据加载到主表中,插入触发器将重复数据插入到备份表中。不确定如何避免这种情况。
很抱歉,如果问了太多问题,我们就无法找到实现目标的最佳途径。
感谢任何帮助。
谢谢,
Richa