方法:1、利用“ALTER SEQUENCE 序列名”语句修改序列名;2、利用“Increment By”修改序列初始值,语法为“ALTER SEQUENCE SEQ_TEST INCREMENT BY 数值”。
本教程操作环境:Windows10系统、oracle 11g版、Dell G3电脑。
oracle怎样修改序列
Oracle 创建序列:create sequence xxxx
注:Oracle中的序列并不是和mysql中的自增长一样,连续性的,而是跳跃、不连续性的。如要使他连续,则必须指定相关的属性和值。
1 create sequence student_id
2 minvalue 1 –最小值
3 nomaxvalue –不设置最大值(由机器决定),或 根据表字段的值范围设置 maxvalue
4 maxvalue 999 — 最大值
5 start with 1 –从1开始计数,数值可变
6 increment by 1 –每次加1,数值可变
7 nocycle –一直累加,不循环;cycle:达到最大值后,将从头开始累加
8 nocache; –不建缓冲区。 如果建立cache那么系统将自动读取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来实现修改初始值。
例如:若序列名称是SEQ_TEST,初始值是13,而现在要设置初始值为1013,Increment By值为:1000(1013-13)
1) 执行:ALTER SEQUENCE SEQ_TEST INCREMENT BY 1000;
2) 执行:select SEQ_TEST.NEXTVAL FROM DUAL;
3) 执行:ALTER SEQUENCE SEQ_TEST INCREMENT BY 1;
推荐教程:《Oracle视频教程》