在oracle数据库中设置逐渐自增策略的方式有两种:
建表:
create table stu(
sid int primary key, --设置id为主键
sname varchar(10),
sex int
)
1.使用序列实现自增
(1)创建序列
create sequence SEQ_Userinf
minvalue 1 --最小值
nomaxvalue --不设置最大值
start with 1 --从1开始计数
increment by 1 --每次加1个
nocycle --一直累加,不循环
nocache; --不建缓冲区
(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
begin
select sid_sequence.nextval into:new.sid from dual;
end;
before insert on stu /*触发条件:当向表stu执行插入操作时触发此触发器*/
for each row /*对每一行都检测是否触发*/
begin /*触发器开始*/
select sid_sequence.nextval into :new.sid from dual; /*触发器主题内容,即触发后执行的动作,在此是取得序列sid_sequence的下一个值插入到表 stu中的sid字段中*/
end;
(2)插入数据
insert into stu(sname,sex) values('王五',1)
更多推荐
Oracle数据库中设置主键自增
发布评论