甲骨文警告:执行与警告

问题描述:

完成我有两个表甲骨文警告:执行与警告

Orders(ID,ORDERDATE,DELIVERYDATE,GOODID,QUANTITY,COLLECTIONFROM,DELIVERYTO,NOTES) 

ROLLINGSTOCK_ORDER(ORDERID,ROLLINGSTOCKID,DEPARTUREDATE,DELIVERYDATE,ROUTEID) 

我创建了一个触发器ROLLINGSTOCK_ORDER更新DELIVERYDATE时DELIVERYDATE在Orders

CREATE OR REPLACE TRIGGER TRIGGER_UpdateDeliveryDate 
BEFORE UPDATE OF DELIVERYDATE ON Orders 
FOR EACH ROW 
BEGIN  
then 
    UPDATE LOCOMOTIVE_DRIVER ld 
    set ld.DELIVERYDATE = :new.DELIVERYDATE 
    where ld.orderid = :new.id 
end if; 
END; 
更新

当我运行它时,我收到以下消息

警告:执行与 警告TRIGGER TRIGGER_UpdateDeliveryDate编译完成。

的警告并没有给我任何信息,以便

  1. 我怎么能看到警告的细节?

  2. 触发器似乎对我来说可以发现问题吗?

感谢

+0

http://*.com/questions/2678102/create-a-trigger-that-updates-a-column-on-one-table-when-a-column-in-another-tab的可能重复 – APC 2010-04-25 13:48:00

本周早些时候,你问了一个问题上写一个触发器执行有条件更新

错误。我发布了two examples of how to achieve that end。你看起来已经完成的是将这两个例子混合成一个不能编译的单个spavined触发器。

要清楚你只需要下列其中一项。无论是

BEFORE UPDATE OF DELIVERYDATE ON Orders 

BEFORE UPDATE ON Orders 
... 
    if :new.delivery_date != :old.delivery_date then 

使用第一个选项,如果你只是有一件逻辑的应用。如果你想让你的触发器处理其他的逻辑,也可以使用第二个版本,通常就是这样。

你写

BEGIN  
then 

这是不正确的语法。你错过了IF

您还您UPDATE后失踪分号(;)。


你可能会使用

Show Error Trigger TRIGGER_UpdateDeliveryDate