我对Oracle PL/SQL相当陌生,所以我不确定是否可以这样做:Oracle Pl/SQL:在Table1上插入后触发,为Table2调用函数?
两个表 - T1和T2 - T1.id是外键引用T2.id,每个表都有一个序列; 我写了一个函数,当它被调用时允许用户在T1中插入新行 - 将其称为func1,对于T2-func2也是如此; 也是一个函数,让我们在表中最后插入的序列 - getLastSeq(table);
所以,现在我试图创建触发器后T2插入调用FUNC1,允许用户写入输入信息。 COL1不是一个坏的绑定VAR:
CREATE OR REPLACE TRIGGER trig1
AFTER INSERT ON T2
DECLARE
-----?----
BEGIN
----?----
dbms_output.put_line(func1(:col1, :col2));
----?----?
END;
但所有我可能试图与有关错误做模具等。
我会尽力解释:我有两张表。当我在其中一个表中插入新信息时,使用过程,我需要使用另一个过程将信息插入另一个表中。例如 - 我们插入一个新的订单,并且在我插入了关于它的数据之后,我需要插入另一个表中保存的其他信息,这些信息也从其他表中获取信息。 关于用户输入(我没有正确说出这个),我的意思是用绑定变量调用过程。 – Izumi
@Izumi - 通常,如果您要将数据插入到第二个表中,则只需在该过程中执行两次“INSERT”调用即可。 –
通常 - 是的,我只是试图想出一些更有趣的触发器,这就是为什么我认为有两个过程,并且在其中一个过程完成之后,它会激活一个调用其他过程的触发器。 – Izumi