当数据插入另外两个表(即 table_1 和 table_2 )时,我一直试图在表中动态插入数据,比如 admin 。我只能为一个表而不是多个表获得所需的输出。我如何通过在 oracle 中使用触发器来实现这一点?
问问题
1404 次
2 回答
0
您需要创建两个单独的INSERT 触发器,一个table_1
和另一个table_2
将数据插入admin
表中。
触发器 1:
CREATE OR REPLACE TRIGGER table_1_after_insert
AFTER INSERT
ON table_1
FOR EACH ROW
BEGIN
-- Insert record into admin table
INSERT INTO admin
( column1,
column2,
column3,
column4,
column5 )
VALUES
( :new.column1,
:new.column2,
:new.column3,
:new.column4,
:new.column5 );
END;
/
触发器 2:
CREATE OR REPLACE TRIGGER table_2_after_insert
AFTER INSERT
ON table_2
FOR EACH ROW
BEGIN
-- Insert record into admin table
INSERT INTO admin
( column1,
column2,
column3,
column4,
column5 )
VALUES
( :new.column1,
:new.column2,
:new.column3,
:new.column4,
:new.column5 );
END;
/
于 2015-10-07T06:25:39.950 回答
0
按照 lalit 的建议在 2 个表上创建 2 个触发器
CREATE or replace TRIGGER TRG_TAB1
BEFORE INSERT ON tab1...
... insert into admin (name) values (:new.name)
在另一张桌子上
CREATE or replace TRIGGER TRG_TAB2
BEFORE INSERT ON tab2...
... insert into admin (name) values (:new.name)
于 2015-10-07T06:13:34.253 回答