在oracle数据库中设置逐渐自增策略的方式有两种:
建表:
create table stu(
sid int primary key,
sname varchar(10),
sex int
)
1.使用序列实现自增
(1)创建序列
create sequence SEQ_Userinf
minvalue 1 --最小值
nomaxvalue --不设置最大值
start with 1 --从1开始计数
increment by 1 --每次加1个
nocycle --一直累加,不循环
nocache; --不建缓冲区
create sequence sid_sequence
minvalue 1
nomaxvalue
start with 1
increment by 1
nocycle
(2)插入数据
insert into test values (sid_sequence.nextval,'张三丰',1); --实现自增
2.创建触发器实现自增
(1)创建触发器
create or replace trigger stu_sid_trigger before insert on stu for each row when(new.sid is null)
begin
select sid_sequence.nextval into:new.sid from dual;
end;
(2)插入数据
insert into stu(sname,sex) values('王五',1)