方法:1、利用“ALTER SEQUENCE 序列名”語句修改序列名;2、利用“Increment By”修改序列初始值,語法為“ALTER SEQUENCE SEQ_TEST INCREMENT BY 數(shù)值”。
本教程操作環(huán)境:Windows10系統(tǒng)、oracle 11g版、Dell G3電腦。
oracle怎樣修改序列
Oracle 創(chuàng)建序列:create sequence xxxx
注:Oracle中的序列并不是和mysql中的自增長一樣,連續(xù)性的,而是跳躍、不連續(xù)性的。如要使他連續(xù),則必須指定相關(guān)的屬性和值。
1 create sequence student_id
2 minvalue 1? –最小值
3 nomaxvalue? –不設(shè)置最大值(由機器決定),或 根據(jù)表字段的值范圍設(shè)置 maxvalue
4 maxvalue 999? — 最大值
5 start with 1? ?–從1開始計數(shù),數(shù)值可變
6 increment by 1? –每次加1,數(shù)值可變
7 nocycle? –一直累加,不循環(huán);cycle:達(dá)到最大值后,將從頭開始累加
8 nocache;? –不建緩沖區(qū)。? ?如果建立cache那么系統(tǒng)將自動讀取cache值個seq,這樣會加快運行速度;如果在單機中使用cache,或者oracle死了,那么下次讀取的seq值將不連貫,所以不建議使用cache。
2、Oracle 修改序列:alter sequence xxxx
1 alter sequence student_id — 序列名 也可以更改
2 minvalue 1? ?
3 maxvalue 99999??
4 start with 1? ?
5 increment by 1??
6 cycle? ? — 到99999后,從頭開始
7 nocache;??
3.通過Increment By來實現(xiàn)修改初始值。
例如:若序列名稱是SEQ_TEST,初始值是13,而現(xiàn)在要設(shè)置初始值為1013,Increment By值為:1000(1013-13)
1) 執(zhí)行:ALTER SEQUENCE SEQ_TEST INCREMENT BY 1000;
2) 執(zhí)行:select SEQ_TEST.NEXTVAL FROM DUAL;
3) 執(zhí)行:ALTER SEQUENCE SEQ_TEST INCREMENT BY 1;
推薦教程:《Oracle視頻教程》