【发布时间】:2011-07-08 07:48:38
【问题描述】:
Oracle PL/SQL 如何在提交时调用远程过程 (RPC)。 示例:我有一个表 TABLE1 并在 TABLE1 中插入一些行并提交。我需要在提交时调用远程过程。
【问题讨论】:
Oracle PL/SQL 如何在提交时调用远程过程 (RPC)。 示例:我有一个表 TABLE1 并在 TABLE1 中插入一些行并提交。我需要在提交时调用远程过程。
【问题讨论】:
我不太确定远程过程是什么意思,但如果您想“在提交时”执行任何操作,那么通常最好的方法是创建一个调用 DBMS_JOB.SUBMIT 来执行工作的 AFTER 触发器。该作业仅在事务提交时执行,而不是在它回滚时执行。触发器类似于:
create trigger call_rpc
after insert on table1
for each row
declare
l_job number;
begin
dbms_job.submit( l_job, 'mypkg.run_rpc(:new.id);' );
end;
其中mypkg.run_rpc 是一个可以执行您需要执行的任何操作的过程。
【讨论】: