我的表上有以下触发器,我面临的问题是在my_hist表中当条件变为时插入新旧值updated = 'Y'。
当条件变为updated = 'Y'.  
谢谢
CREATE OR REPLACE TRIGGER mytrig
    AFTER UPDATE
    ON mytab
    FOR EACH ROW
WHEN (
new.updated = 'Y'
      )
BEGIN
    INSERT INTO my_hist
      VALUES   (
                        :old.id,
                        :old.no,                        
                        :old.start_date,
                        :old.end_date,
                        SYSDATE
                  );
END mytrig;
/
更新 1
如果我正在更新updated = 'Y',那么如果我有记录
id = 3, start_date='01-Jan-2014' and end_date='31-Jan-2014' 和更新的数据
id = 3, start_date=='01-Jan-2014' and end_date='31-Mar-2014'然后我将在 my_hist 表中有两条记录
id = 3 and start_date='01-Jan-2014' and end_date='31-Jan-2014'
和
id = 3 and start_date='01-Jan-2014' and end_date='31-Mar-2014'
理想情况下,我应该只id = 3 and start_date='01-Jan-2014' and end_date='31-Jan-2014'在 my_hist 表中,而不是第二行,end_date='31-Mar-2014'因为那是新数据。