【发布时间】:2012-12-19 11:40:32
【问题描述】:
我正在尝试创建一个触发器来计算每个插入命令的派生属性。但是我收到编译错误,我不知道问题出在哪里。
CREATE OR REPLACE TRIGGER NewTrigger
BEFORE INSERT
ON Dates FOR EACH ROW
BEGIN
SET :NEW.difference := :NEW.date1 - :NEW.date2;
END;
显示错误向我显示以下信息:
LINE/COL ERROR
-------- -----------------------------------------------------------------
1/7 PL/SQL: SQL Statement ignored
1/11 PL/SQL: ORA-00922: missing or invalid option
【问题讨论】:
-
dates.difference 的日期类型是什么?
-
一定有什么你没有告诉我们的,因为那应该有效。
-
差异类型是数字
-
显然不需要“SET”关键字。
-
仅供参考 - SET 是 SQL*plus 命令,而不是 PL/SQL。