【求助】Oracle自增字段创建触发器报错

公子小白_ 2012-08-29 02:22:50
表user_info的字段Userid(number类型)设置为自增字段,相应的序列已经建成,但是建触发器报错:

CREATE OR REPLACE TRIGGER "gw"."tri_users_info" BEFORE INSERT ON "gw"."users_info" REFERENCING OLD AS "OLD" NEW AS "NEW"
BEGIN
IF :new.Userid is null or :new.Userid=0 then
select users_info_seq.NEXTVAL
into :new.Userid
FROM sys.DUAL;
end if;
END;

保存报错:ORA-24344 success with compilation error.

请教各位前辈大侠。。。。
...全文
138 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
公子小白_ 2012-08-30
  • 打赏
  • 举报
回复
我用的是导航猫[Quote=引用 6 楼 的回复:]

该是没问题的,比如

SQL code
CREATE OR REPLACE TRIGGER tony."tri_users_info" BEFORE INSERT ON tony.emp REFERENCING OLD AS "OLD" NEW AS "NEW"
for each row
BEGIN
IF :new.empno is null or :new.empno=0 then
……
[/Quote]
fw0124 2012-08-29
  • 打赏
  • 举报
回复
该是没问题的,比如

CREATE OR REPLACE TRIGGER tony."tri_users_info" BEFORE INSERT ON tony.emp REFERENCING OLD AS "OLD" NEW AS "NEW"
for each row
BEGIN
IF :new.empno is null or :new.empno=0 then
select users_info_seq.NEXTVAL
into :new.empno
FROM sys.DUAL;
end if;
END;


我试下来是没问题的.你检查下你的用户名,表格名和列名,sequence名有没有拼写错误。

还有,把具体错误发上来,
sqlplus执行的话,show error
sql developer的话,右键菜单 [编译],执行后右下的窗口里面就有具体错误信息。

公子小白_ 2012-08-29
  • 打赏
  • 举报
回复
还是不行
我再试试看
fw0124 2012-08-29
  • 打赏
  • 举报
回复
gw,users_info改成大写试下。或者把引号去掉。

CREATE OR REPLACE TRIGGER gw."tri_users_info" BEFORE INSERT ON gw.users_info REFERENCING OLD AS "OLD" NEW AS "NEW"
for each row
BEGIN
IF :new.Userid is null or :new.Userid=0 then
select users_info_seq.NEXTVAL
into :new.Userid
FROM sys.DUAL;
end if;
END;



人生无悔 2012-08-29
  • 打赏
  • 举报
回复

create or replace trigger gw.tri_users_info
before insert
on gw.user_info
--REFERENCING OLD AS "OLD" NEW AS "NEW"
for each row
begin
if :new.Userid is null or :new.Userid=0 then
:new.Userid := user_info_seq.nextval;
end if;
end;
/
公子小白_ 2012-08-29
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

在BEGIN前面加上一行
for each row
[/Quote]
试过了,还是一样的错误
fw0124 2012-08-29
  • 打赏
  • 举报
回复
在BEGIN前面加上一行
for each row

17,089

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧