那位高人帮我看看 我写的这个触发器 在pl/sql delevoper下不行 提示触发器无效 但是在命令行下创建这个触发器就没事 可以插入数据 并且这个时候在pl/sql下也可以插入了 不知道怎么弄的 给看看
create or replace trigger set_add
before insert on emp
for each row
declare
sn number;
begin
select emp_id into sn from emp where rownum<2 order by emp_id desc;
sn:=sn+1;
:new.emp_id:=sn;
end;
/插入语句是 intsert into emp (emp_id,emp_name,emp_sex) values(11,'xiaoming','m');
create or replace trigger set_add
before insert on emp
for each row
declare
sn number;
begin
select emp_id into sn from emp where rownum<2 order by emp_id desc;
sn:=sn+1;
:new.emp_id:=sn;
end;
/插入语句是 intsert into emp (emp_id,emp_name,emp_sex) values(11,'xiaoming','m');
你的插入语句这么写?
可是我看你的触发器的意思是要自动产生emp_id呀~ create or replace trigger set_add
before insert on emp
for each row
begin
select emp_id+1 into :new.emp_id from emp where rownum <2 order by emp_id desc; end;
--创建触发器create or replace trigger set_add
before insert on emp
for each row
begin
select NVL(max(emp_id)+1,1) into :new.emp_id from emp ;
end;--插入,插入的时候EMP_ID的值就没必要插了,触发器会自动给它生成的
intsert into emp (emp_name,emp_sex) values('xiaoming','m');