Oracle学习笔记
1.序列sequence
1. 序列的基本介绍
可供多个用户用来产生唯一数值的数据库对象
自动提供唯一的数值
共享对象
主要用于提供主键值
将序列值装入内存可以提高访问效率
2. 创建序列的语法
CREATE SEQUENCE sequence
[INCREMENT BY n] --每次增长的数值
[START WITH n] --从哪个值开始
[{MAXVALUE n | NOMAXVALUE}]
[{MINVALUE n | NOMINVALUE}]
[{CYCLE | NOCYCLE}] --是否需要循环
[{CACHE n | NOCACHE}]; --是否缓存登录
例子
create sequence empseq
increment by 10–每次增长10
start with 10–从10 开始
maxvalue 100 --最大值为100
minvalue 10–最小值为10
cycle --需要循环
nocache --不需要缓存
这里有两个语句分别是求当前序列的值和下一个序列的值
不过刚开始的时候只能先使用下一个序列的值,这是因为刚开始sequence还没有值,当前值不知道是什么。
select empseq.nextval from dual;
select empseq.currval from dual;
创建一个表来使用上面的序列作为主键值
insert into emp<