Oracle 如何在完成表中的数据插入后触发触发器

Oracle 如何在完成表中的数据插入后触发触发器,oracle,plsql,triggers,oracle9i,Oracle,Plsql,Triggers,Oracle9i,我有一个表a,在其中插入数据。然后对同一个表A进行一些计算 我想触发一个触发器,它在插入和更新后完成数据插入后调用过程a 我该怎么做 有没有其他方法可以自动完成。。。或者在完成表A中的数据插入后,我必须手动运行程序A 更简单地说,我想知道如何在插入几行和一个commit之后触发触发器,即不针对每行。您可以为每行或每行选项的每条语句定义要触发的触发器 如果我没弄错的话,你想在一大堆陈述之后触发吗?别以为你能。即使你能,我也不愿意做。它们分散了您的程序流/逻辑,使以后更难理解您的软件是如何工作的 关

我有一个表a,在其中插入数据。然后对同一个表A进行一些计算

我想触发一个触发器,它在插入和更新后完成数据插入后调用过程a

我该怎么做

有没有其他方法可以自动完成。。。或者在完成表A中的数据插入后,我必须手动运行程序A


更简单地说,我想知道如何在插入几行和一个commit之后触发触发器,即不针对每行。

您可以为每行或每行选项的每条语句定义要触发的触发器

如果我没弄错的话,你想在一大堆陈述之后触发吗?别以为你能。即使你能,我也不愿意做。它们分散了您的程序流/逻辑,使以后更难理解您的软件是如何工作的


关于

如果我正确理解您的问题,您希望在完成包含多条insert/update语句的事务后触发触发器吗?如果是这样的话,我认为您应该考虑在插入/更新操作完成之后,在程序流中调用程序A。
换句话说:触发器只有在为每一行或每一条语句调用时才有用。

在表中添加一列:例如FINAL_ACTION。在你预期的最后行动之前,不要触动这个专栏。然后,仅使用以下条款触发触发器:

REFERENCING NEW AS NEWREC OLD AS OLDREC
FOR EACH ROW
WHEN (NEWREC.FINAL_ACTION <> OLDREC.FINAL_ACTION)
DECLARE
     --YOUR DECLARATIONS
BEGIN
     --DO SOMETHING
END;

我想你是对的…我在网上也找不到任何东西。。将尝试任何其他选项。无论如何,谢谢…为什么更新后触发器对您没有帮助?不是每一个;语句触发器