Vig*_*ale 1 sql oracle triggers sequence
我正在尝试创建一个触发器,但不知何故我收到了名为“错误绑定变量”的错误。我在谷歌上搜索了它,但在所有情况下我都得到了相同的答案,即用户试图使用错误的列名创建触发器。这是我的脚本。
CREATE TABLE "POPSETTING"
( "settingid" number primary key,
"HOSTNAME" VARCHAR2(50),
"INCOMINGSERVER" VARCHAR2(100),
"REQUIREDSSL" VARCHAR2(1),
"PORT" NUMBER,
"OUTGOINGSERVER" VARCHAR2(100),
"REQUIREDTLS" VARCHAR2(1),
"REQUIREDAUTH" VARCHAR2(1),
"PORTTLS" NUMBER,
"PORTSSL" NUMBER
)
Run Code Online (Sandbox Code Playgroud)
顺序:
create sequence auto_inc start with 1 increment by 1 nomaxvalue
Run Code Online (Sandbox Code Playgroud)
扳机:
create or replace trigger popid
before insert on popsetting
for each ROW
begin
select auto_inc.NEXTVAL
into :new.settingid from dual
end;
/
Run Code Online (Sandbox Code Playgroud)
请让我知道我的错误。
由于您在创建语句中使用了" "around,settingid因此您使其区分大小写。
默认情况下,oracle 将列名视为大写,因此没有:new.settingid(实际上是:new.SETTINGID)
您可能需要尝试:new."settingid"或删除""create table 语句中的
| 归档时间: |
|
| 查看次数: |
2498 次 |
| 最近记录: |