CREATE SEQUENCE users_Sequence
INCREMENT BY 1
START WITH 1
NOMAXVALUE
NOCYCLE
CACHE 10;
CREATE TRIGGER users_Increase BEFORE
insert ON users FOR EACH ROW
begin
select users_Sequence.nextval into:New.users_id from dual;
end;
/
Warning: Trigger created with compilation errors
大家帮忙看看这里面是不是有关键字存在
users表在之前已经存在
INCREMENT BY 1
START WITH 1
NOMAXVALUE
NOCYCLE
CACHE 10;
CREATE TRIGGER users_Increase BEFORE
insert ON users FOR EACH ROW
begin
select users_Sequence.nextval into:New.users_id from dual;
end;
/
Warning: Trigger created with compilation errors
大家帮忙看看这里面是不是有关键字存在
users表在之前已经存在
解决方案 »
- 请教一个sql的查询,有难度。
- oracle新手,几个简单的问题
- 对于oracle存储过程的一点疑惑
- 删除物化视图无主MLOG问题
- 存储过程问题
- 还是那个备份还原的问题~~
- 报‘动态链接库c:\winnt\system32\user32.dll初始化失败,进程非正常终止’错?sos!小妹急等!
- 这句话是什么意思?知道的请告知,up也有分
- 64bit WinServer2008 安装oracle11g_R2创建实例失败(out of memory)
- 使用oracle自带的UTL_SMTP包来发送邮件
- oracle创建用户时为什么用了两个表空间,请帮忙解释一下,3qU
- oracle 可以在视图上建 立索引吗?
2 deomid number(10) primary key,
3 deomname varchar2(20)
4 );
Table created
SQL>
SQL> CREATE SEQUENCE Deom3_Sequence
2 INCREMENT BY 1
3 START WITH 1
4 NOMAXVALUE
5 NOCYCLE
6 CACHE 10;
Sequence created
SQL>
SQL> CREATE TRIGGER Deom3_Increase BEFORE
2 insert ON Deom3 FOR EACH ROW
3 begin
4 select Deom3_Sequence.nextval into:New.deomid from dual;
5 end;
6 /
Trigger created
SQL> insert into deom3(deomname) values('test');
1 row inserted
SQL> select * from deom3;
DEOMID DEOMNAME
----------- --------------------
1 test
SQL>
我是在XP环境下,使用的,只是这段代码会报错,其他表名不一样的不会报错
DROP SEQUENCE users_Sequence;
DROP PROCEDURE users_Increase;CREATE SEQUENCE users_Sequence
INCREMENT BY 1
START WITH 1
NOMAXVALUE
NOCYCLE
CACHE 10;
CREATE TRIGGER users_Increase BEFORE
insert ON users FOR EACH ROW
begin
select users_Sequence.nextval into:New.users_id from dual;
end;
/
INCREMENT BY 1
START WITH 1
NOMAXVALUE
NOCYCLE
CACHE 10;
CREATE TRIGGER users_Increase BEFORE
insert ON users FOR EACH ROW
begin
select users_Sequence.nextval into:New.users_id from dual;
end;
/运行后都没有问题,一切正常
你在SQLPLUS命令下,执行下你的trigger,然后show errors看下具体什么错误,你的Warning: Trigger created with compilation errors
是在你创建trigger时候报的,具体什么错误你要show errors 看下,才好分析到底什么错误啊!
PLS-00049: bad bind variable 'NEW.USERS_ID'
Users 表我是用视图化工具pl/sql做的,直接创建的
字段的命名规则是 Users_字段名 然后还添加了主键Primary
名称是ID,列是绑定的Users表的Id列,后面还有个“允许”是什么东西?
粗看语法没错 你先前不是发了个帖子怎么又来发,估计是你写法的细节问题CREATE or replace TRIGGER tir_users_Increase BEFORE insert ON users FOR EACH ROW
begin
select users_Sequence.nextval into :New.users_id from dual;
end;
你再仔细检查下你表users中是否存在users_id这个字段!存在时不会爆这个错的!
select column_name from user_tables where table_name='USERS';
你自己都说了名称是ID,列是绑定的Users表的Id列
说明你users表中没有users_id列,而是ID列,仔细检查下1
查看列的列名是否存在users_id