首页 > 数据库 > Oracle > Oracle对象:序列(sequence)介绍
Oracle Sequence是Oracle数据库中的一个对象,它是一个自增的数字序列,用于生成唯一的数字ID。您可以使用 CREATE SEQUENCE 语句在自己的模式中创建新的序列对象
就是创建一个序列,然后可以在任何表中 insert 时,对某个列引用这个创建的序列,达到自增的目的.
CREATE SEQUENCE sequence_name
[START WITH start_num]
[INCREMENT BY increment_num]
[{MAXVALUE maximum_num|NOMAXVALUE}]
[{MINVALUE minimum_num|NOMINVALUE}]
[{CYCLE|NOCYCLE}]
[{CACHE cache_num|NOCACHE}]
[{ORDER|NOORDER}];
start_num :序列开始整数
increment_num :每次增加的整数增量
maximum :序列最大整数
minimum :序列最小整数
CYCLE :循环生成
NOCYCLE :不循环生成,默认值
cache_num :保存在内存中的整数的个数
NOCACHE :不缓存任何整数
例子:
CREATE SEQUENCE seq_test START WITH 2 INCREMENT BY 2 MAXVALUE 9999999999 MINVALUE 1 NOCYCLE NOCACHE NOORDER;
查看序列
select * from dba_sequences where SEQUENCE_OWNER='DEF';
SELECT seq_test.nextval FROM dual;
insert into order_status2 (id) values (seq_test.nextval);
例子:
ALTER SEQUENCE name
[INCREMENT BY n] nfs
[{MAXVALUE n | NOMAXVALUE}]
[{MINVALUE n | NOMINVALUE}]
[{CYCLE | NOCYCLE}]
[{CACHE n | NOCACHE}]
例子:
alter sequence 用户 . SEQUENCE_NAME cache 30;
drop sequence student_id_seq;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70013625/viewspace-3026691/ ,如需转载,请注明出处,否则将追究法律责任。