Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
更新后Oracle触发器返回_Oracle_Join_Plsql_Triggers - Fatal编程技术网

更新后Oracle触发器返回

更新后Oracle触发器返回,oracle,join,plsql,triggers,Oracle,Join,Plsql,Triggers,我正在尝试在发票表的更新付款后创建名为发票的触发器 显示输出中的供应商名称、发票号和付款总额 当付款总额增加时打开窗口 这是我第一次使用触发器,我得到的只是错误 用分号结束此行,如 其中i.vendor\u id=:new.vendor\u id; 并编译以查看是否有任何错误。这是一个无关紧要的语法问题。通过查阅Oracle文档,您可以很容易地解决这个问题。在这里找到相关部分:我不认为它像语法错误那么简单,尽管这是itORA-00933的一部分,表示语法错误。虽然一旦你得到了要编译的触发器,你

我正在尝试在发票表的更新付款后创建名为发票的触发器 显示输出中的供应商名称、发票号和付款总额 当付款总额增加时打开窗口

这是我第一次使用触发器,我得到的只是错误


用分号结束此行,如

其中i.vendor\u id=:new.vendor\u id;

并编译以查看是否有任何错误。

这是一个无关紧要的语法问题。通过查阅Oracle文档,您可以很容易地解决这个问题。在这里找到相关部分:我不认为它像语法错误那么简单,尽管这是itORA-00933的一部分,表示语法错误。虽然一旦你得到了要编译的触发器,你会遇到“mutatingtables”错误,那么我应该看看复合触发器?
create or replace trigger invoices_after_update_payment
after update
on invoices
for each row
when (new.payment_total > old.payment_total)
declare
vendor_name_var    vendors%rowtype%;
Begin
Select v.vendor_name, i.invoice_number, i.payment_total
into vendor_name_var, :new.invoice_number, :new.payment_total
from Vendors v
inner join Invoices i
on v.vendor_id = i.vendor_id
where i.vendor_id = :new.vendor_id
dbms_output.put_line(vendor_name_var || :new.invoice_number || :new.payment_total);
end;
/