方法:1、利用“ALTER SEQUENCE 序列名”语句修改序列名;2、利用“Increment By”修改序列初始值,语法为“ALTER SEQUENCE SEQ_TEST INCREMENT BY 数值”。
本教程操作环境:Windows10系统、Oracle 11g版、Dell G3电脑。
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视频教程》
以上是oracle怎样修改序列的详细内容。更多信息请关注PHP中文网其他相关文章!