各位,我想实现主键自动增长,可是下面这个报错 “触发器无效且未通过重新确认 ”以下是我的代码CREATE TABLE SysMenu (PK integer primary key, sysMenuNo VARCHAR ( 60 ) NOT NULL, sysMenuName VARCHAR ( 60 ) NULL,
linkAddress VARCHAR ( 255 ) NULL, sequence INT NULL, islink VARCHAR ( 1 ) NULL,
re VARCHAR ( 255 ) NULL, aa varchar2(150),bb varchar2(150),cc varchar2(150),dd varchar2(150),ee varchar2(150),
ff varchar2(150),gg varchar2(150),hh varchar2(150),ii varchar2(150),jj varchar2(150),kk varchar2(150),
ll varchar2(150),mm varchar2(150),nn varchar2(150));
drop trigger tigger_SysMenu;-- 建立序列:create sequence Sequence_t_qmjb_oliveright
minvalue 1
maxvalue 999999999999999999999999999
start with 1
increment by 1
cache 20; --建立触发器
create trigger "trigger_t_qmjb_oliveright" before
insert on SysMenu for each row when(new.PK is null)
begin
select Sequence_t_qmjb_oliveright.nextval into:new.PK from dual;
end;
谢谢各位了!!
linkAddress VARCHAR ( 255 ) NULL, sequence INT NULL, islink VARCHAR ( 1 ) NULL,
re VARCHAR ( 255 ) NULL, aa varchar2(150),bb varchar2(150),cc varchar2(150),dd varchar2(150),ee varchar2(150),
ff varchar2(150),gg varchar2(150),hh varchar2(150),ii varchar2(150),jj varchar2(150),kk varchar2(150),
ll varchar2(150),mm varchar2(150),nn varchar2(150));
drop trigger tigger_SysMenu;-- 建立序列:create sequence Sequence_t_qmjb_oliveright
minvalue 1
maxvalue 999999999999999999999999999
start with 1
increment by 1
cache 20; --建立触发器
create trigger "trigger_t_qmjb_oliveright" before
insert on SysMenu for each row when(new.PK is null)
begin
select Sequence_t_qmjb_oliveright.nextval into:new.PK from dual;
end;
谢谢各位了!!
解决方案 »
- 求一个很纠结的ORACLE语句
- 一个很纠结的问题 忘找到原因 在线等
- 紧急问题,解答后立刻结贴,客户急用,我在线等候,请问这种情况如何做oracle群集?
- oracle删除数据后,空间不释放如何解决???
- create table 急!!!!!!!!!!!!!1111
- 今天写了个oracle的多表分页存储过程,但是在调用时会出错,请各位帮忙看下
- 修改了某表结构,相关的触发器、视图、存储过程、函数等等都会打红叉,如何一批把他们都重新编译了?
- 创建索引怎么不指定索引名?
- c366的机器装oracle9效果怎样?内存198
- 如何通过查询获取表空间中包含某特定字符的所有表名称?
- 怎么实现通过外网于远程oracle数据库的对接??
- 如何缩小SYSTEM表空间?
before
insert on SysMenu
for each row
declare
pragma autonomous_transaction;
when(new.PK is null)
begin
select Sequence_t_qmjb_oliveright.nextval into:new.PK from dual;
end;