【发布时间】:2019-06-27 00:51:30
【问题描述】:
我创建了一个主键自动递增的表。我已经发送了相关数据、序列和触发器。但到目前为止,我还没有希望执行自动增量,而且我的触发器不断抛出错误。
代码:
CREATE SEQUENCE empid_seq
INCREMENT BY 1
START WITH 1101
NOCACHE;
CREATE TRIGGER empuser_trigger
before insert on empuser
for each row
begin
if :new.empuserid.nextval into :new.empuserid from dual;
end if;
end;
/
INSERT INTO empuser VALUES(empid_seq.nextval, 'James', 'Kirk', '+447911123456', '401', '203', (SELECT messageid FROM message WHERE messageid = '2101'));
INSERT INTO empuser VALUES(empid_seq.nextval, 'Spock', 'Spock?', '+447911123466', '401', '203', (SELECT messageid FROM message WHERE messageid = '2103'));
INSERT INTO empuser VALUES(empid_seq.nextval, 'Leonard', 'McCoy', '+447911144456', '401', '203', (SELECT messageid FROM message WHERE messageid = '2104'));
INSERT INTO empuser VALUES(empid_seq.nextval, 'Hikaru', 'Sulu', '+447911123856', '401', '203', (SELECT messageid FROM message WHERE messageid = '2106'));
我想要的是 ID 在用户输入时自动递增。
【问题讨论】:
标签: sql oracle oracle11g sql-insert database-trigger