Oracle触发器错误

SunshineKang 2011-07-28 09:36:16
我想让Oracle数据库中的一个“产品表”的一个编号字段自动增长,
所以我先建了一个序列 seq_production_id
然后我在建触发器时出现了错误,触发器的SQL语句如下:
CREATE OR REPLACE TRIGGER "SYSTEM"."TRI_PRODUCTTION_ID" BEFORE
INSERT ON "SYSTEM"."PRODUCTION" FOR EACH ROW
begin
select seq_production_id.nextval into :new.id form dual;
end;

Oracle数据库报的错误为:
SQL 错误
Failed to commit: ORA-06552: PL/SQL: Compilation unit analysis terminated ORA-06553: PLS-320: 此表达式的类型声明不完整或格式不正确
我实在是看不出错误在哪里,跪求大侠帮忙解决
...全文
58 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
SunshineKang 2011-08-06
  • 打赏
  • 举报
回复
我搞清楚了,列的一个字段我用了“DATE”,date应该是系统字段,不能用!
SunshineKang 2011-07-29
  • 打赏
  • 举报
回复
我想问一下我的那个程序里面哪里出错了!
“此表达式的类型声明不完整或格式不正确 ”

你写的不是跟我写的一样吗!
秋雨飘落 2011-07-28
  • 打赏
  • 举报
回复

create table book(
bookId varchar2(4) primary key,
name varchar2(20)
);
--创建序列
create sequence book_seq start with 1 increment by 1;


--创建触发器
create or replace trigger book_trigger
before insert on book
for each row
begin
select book_seq.nextval into :new.bookId from dual;
end ;
--添加数据
insert into book(name) values ('cc');
insert into book(name) values ('dd');


SELECT * FROM BOOK


17,086

社区成员

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

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