我在尝试编译以下触发器时遇到此错误:
CREATE OR REPLACE TRIGGER INCREMENTER_ID_CONSISTANCE
BEFORE INSERT ON BD.CONSISTANCE
for each row
BEGIN
:new.code := ID_CONSISTANCE.nextval;
END;
**ERROR** : Table,View Or Sequence reference 'ID_CONSISTANCE.nextval' not allowed in
this context
这是什么问题?我该如何解决这个问题?
答案 0 :(得分:9)
此语法仅在Oracle 11或更高版本中允许。
(不支持和过时的)9i版本不支持直接分配序列值。
您需要使用select into
代替:
select ID_CONSISTANCE.nextval
into :new.code
FROM dual;
你应该真的计划升级到当前版本的Oracle(11.x或12.x)