【发布时间】:2017-09-15 14:28:15
【问题描述】:
我刚刚开始使用触发器。在尝试编译下一个代码片段时,错误会在日志中列出,如下所示:“错误(2,3):PL/SQL:SQL 语句被忽略”和“错误(2,7):PL/SQL:ORA-00922 :缺少或无效的选项”。 我不明白这个问题。有人可以帮忙吗?
CREATE OR REPLACE TRIGGER CONT_VIG
BEFORE INSERT ON CONTRACTS
FOR EACH ROW
WHEN (OLD.CLIENTID = NEW.CLIENTID AND OLD.ENDDATE > NEW.STARTDATE)
BEGIN
SET (OLD.enddate = :NEW.startdate-1);
END;
【问题讨论】:
-
FOR EACH ROW表示插入的每一行——而不是预插入表中存在的每一行。 -
首先解释一下你想做什么 - 如果我们不知道有什么要求,我们就不能真正评论代码。
-
你在PL/SQL manual哪里找到
SET赋值?