创建Oracle Trigger时出现编译错误

时间:2016-06-15 06:18:01

标签: oracle database-trigger

我正在尝试使用以下代码创建一个简单的触发器 -

CREATE OR REPLACE TRIGGER trg_menu_id BEFORE INSERT ON "menu" FOR EACH ROW
BEGIN
 SELECT
    menu_id_seq.NEXTVAL INTO : NEW.MENU_ID
 FROM
    dual ;
END ;

但我得到了 - [错误] ORA-24344:编译错误成功 我不明白我做错了什么。

1 个答案:

答案 0 :(得分:1)

最后我的问题解决了。字段名称是小写字母所以我必须使用NEW."menu_id"而不是NEW.MENU_ID,现在它工作正常! 我的新代码是 -

CREATE OR REPLACE TRIGGER trg_menu_id BEFORE INSERT ON "menu" FOR EACH ROW
BEGIN
 SELECT
    menu_id_seq.NEXTVAL INTO :NEW."menu_id"
 FROM
    dual ;
END ;