我们如何编写触发器以将一个表中的不同值插入到Oracle中的另一个表中?

时间:2016-01-18 13:13:23

标签: sql oracle triggers

假设table1,table2是2个表。只要table1中有插入/更新,table2就必须相应地更新。

请帮帮我吗?

提前致谢。

2 个答案:

答案 0 :(得分:0)

你可以试试这个:

-- insert/update command on table1
create or replace trigger TriggerName before insert or update on table1 for each row
    BEGIN
        -- Write inset/update command on table2
    END;
/

答案 1 :(得分:0)

您可以使用MERGE语句。尝试类似:

CREATE OR REPLACE TRIGGER TABLE1_AIU
  AFTER INSERT OR UPDATE ON TABLE1
  FOR EACH ROW
BEGIN
    MERGE INTO TABLE2 t2
      USING (SELECT :NEW.VALUE1 FROM DUAL) n
        ON (t2.VALUE1 = n.VALUE1)
      WHEN NOT FOUND THEN
        INSERT (VALUE1)
          VALUES (n.VALUE1);
END;

祝你好运。