【问题标题】:What is the correct SQL for a trigger to copy a record to an identical table?触发器将记录复制到相同表的正确 SQL 是什么?
【发布时间】:2011-02-13 09:25:37
【问题描述】:

我有两个结构相同的表 TABLE1 和 TABLE2。从 TABLE1 插入到 TABLE2 后,我需要一个触发器来复制记录。什么是正确的 SQL?

【问题讨论】:

    标签: sql oracle triggers


    【解决方案1】:

    这会起作用:

    CREATE OR REPLACE TRIGGER copy_tab1_tab2_trg AFTER INSERT ON table1
       FOR EACH ROW
    BEGIN
        INSERT INTO TABLE2 
           (col1, col2, ..., coln) 
        VALUES 
           (:NEW.col1, :NEW.col2, ..., :NEW.coln);
    END;
    

    【讨论】:

    • 谢谢!那是 :NEW 我不确定的部分。
    • 不知道有没有更短的语法。重复所有列名感觉是多余的。这也意味着一旦表结构发生任何变化,触发器就会被破坏。
    猜你喜欢
    • 2018-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多