oracle本来没有自增主键,但我们可以通过序列与触发器实现自增主键
1、创建表
create table demo
(
id int not null,
name varchar(10),
primary key(id)
)
2、创建序列
create sequence seq_demo
increment by 1 --自增 1
start with 1 --开始值 1
nomaxvalue --无最大值
minvalue 1 --最小值 1
nocycle; --不循环
3、创建触发器将表与序列关联
create or replace trigger trg_demo before insert on demo for each row when(new.id is null)
begin
select seq_demo.nextval into:new.id from dual;
end;