[英]pl sql trigger insert values from a sequence
create table userdetail(
userdetailsid number(3) not null,
userid varchar2(5),
firstname varchar2(15),
lastname varchar2(15),
email varchar2(15),
primary key (userdetailsid)
);
create sequence Iseq
start with 1
increment by 1;
create or replace trigger userDetailInsert
before insert on userdetail
begin
:userdetailsid:=Iseq.nextval;
end;
the error I get is as follows: 我得到的错误如下:
Error at line 2: PLS-00049: bad bind variable 'USERDETAILSID'
Remove :
from :userdetailsid
or use :old.
从
:userdetailsid
删除:
或使用:old.
/ :new
in combination with for each row
: /
:new
与for each row
结合使用:
create or replace trigger userDetailInsert
before insert on userdetail for each row
begin
:new.userdetailsid:=Iseq.nextval;
end;
If you use a :
the column name is considered to be a bind variable . 如果使用a
:
列名被视为绑定变量 。
Generally said, if you want to reference old or new values use :old.userdetailsid
resp. 一般而言,如果要引用旧值或新值,请使用
:old.userdetailsid
resp。 :new.userdetailsid
. :new.userdetailsid
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.