甲骨文警告:执行与警告
问题描述:
完成我有两个表甲骨文警告:执行与警告
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编译完成。
的警告并没有给我任何信息,以便
我怎么能看到警告的细节?
触发器似乎对我来说可以发现问题吗?
感谢
答
本周早些时候,你问了一个问题上写一个触发器执行有条件更新
错误。我发布了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
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