0
我在Oracle 11g中创建自动增量触发器时遇到问题。如果有人能指出我做错了什么,我会非常感激。我对序列的脚本是这样的:Oracle自动增量触发器问题
CREATE SEQUENCE SPSS_QUOTE_LINE_ITEMS_SEQ start with 1
increment by 1
minvalue 1;
触发脚本:
CREATE OR REPLACE TRIGGER SPSSQUOTELINEITEMS_ON_INSERT
BEFORE INSERT ON SPSS_QUOTE_LINE_ITEMS
FOR EACH ROW
BEGIN
SELECT SPSS_QUOTE_LINE_ITEMS_SEQ.NEXTVAL
INTO :new.line_num
FROM dual;
END;
我得到的错误: [编号:900,SQL状态:42000] ORA-00900:无效的SQL声明
非常感谢。
可能相同的问题:http://stackoverflow.com/questions/29450495/autoincrement-in-oracle-with-seq-and-trigger-invalid-sql-statement – Codo
你使用什么客户端? – sstan
为什么不简单':new.line_num:= SPSS_QUOTE_LINE_ITEMS_SEQ.NEXTVAL;'而不是'select ... from dual;' –