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表在之前已经存在
解决方案 »
- oracle 10g 打不开控制台
- 【请教】语句级触发器能得到是那条语句触发的嘛?
- 关于一个sql的问题,请大家帮帮忙。特别邀请wildwave
- 请教一个SQL优化问题
- 存储过程中查询数据,提示表或视图不存在
- 100分求一个字符数字混合时排序问题~~~~
- sql server 中的uniqueidentifier类型在oracle中对应的类型是什么??
- 使用存储过程来创建表的错误。
- 我想用insert语句插入大于2000个的中文字符到一个long型的字段中,该怎么办啊?
- 救命呀!我快疯了,关于ORACLE服务器端的问题。
- 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