【发布时间】:2017-10-09 23:03:55
【问题描述】:
我正在尝试使用 SQL 在我的数据库上创建一个触发器,以便在插入表 HISTORY 表后,如果,属性 FINISHED="T",MESSAGE 属性是 "FINISHED",否则,如果FINISHED="F",MESSAGE 是"NOT FINISHED"。
这是我目前尝试运行的代码,它说
“使用编译错误创建的触发器”
有人能告诉我这句话有什么问题吗?谢谢!
CREATE OR REPLACE TRIGGER MESSAGE_TR
AFTER INSERT
ON HISTORY
FOR EACH ROW
BEGIN
IF (HISTORY.FINISHED="T")
THEN
INSERT INTO HISTORY(MESSAGE) VALUES("FINISHED");
ELSEIF (HISTORY.FINISHED="F")
INSERT INTO HISTORY(MESSAGE)VALUES("NOT FINISHED");
END;
/
【问题讨论】:
-
您使用的是 MySQL 还是 Oracle?该代码不会在它们两者上运行。
-
@jarlh 我正在使用 Oracle。
-
我会从字符串文字周围的单引号开始。
标签: oracle plsql database-trigger