实现ORACLE字段自增、重置

2017-05-27  本文已影响0人  Xxxxx_f64c

创建自增序列:

create sequence AutoID 
start with 1 //根据需要自己可修改该数值 
increment by 1 //步长值 
minvalue 1 
nomaxvalue 

创建触发器:

create trigger AutoID_Trigger 
before insert on Test_Table for each row 
begin 
select AutoID.nextval into :new.ID from dual; 
end

重置序列:

假设需要修改的序列名:seq_name

获取seq_name的nextval值

SELECT seq_name.nextval FROM dual;

假设得到的结果是 555

调整增长值

ALTER SEQUENCE seq_name INCREMENT BY -554;

注意此处是 -(n-1)

重新获取seq_name的nextval值

SELECT seq_name.nextval FROM dual;

此时获取nextval就重置为1了

重新修改调整值为1

ALTER SEQUENCE seq_name INCREMENT BY 1;
上一篇下一篇

猜你喜欢

热点阅读