需要立即在触发的表上删除Oracle触发器插入值

时间:2013-09-26 15:55:19

标签: sql oracle

我已经为表T1,INSERT事件编写了一个触发器,它将在另一个表(T2)中插入相同的行。但我的要求是,在T2中插入记录后,应该从T1中删除它。你能建议..

1 个答案:

答案 0 :(得分:2)

我建议你做以下事情:

1-创建一个插入t2的程序:

CREATE OR REPLACE PROCEDURE yourname (IN values YOURTYPE) IS 
PRAGMA AUTONOMOUS_TRANSACTION;
BEGIN
    INSERT INTO T2 (...) VALUES (...);
    COMMIT;
END
/

2-在T1 {/ p>的AFTER INSERT触发器内调用此函数

3-之后在触发器中回滚事务。 首先应该取消插入。

请注意,它会影响以前的任何其他交易操作。