视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Oracle常见数据库对象—序列
2020-11-09 11:35:55 责编:小采
文档


一、序列:是oacle提供的用于产生一系列唯一数字的数据库对象。 a) 序列的特点 i. 自动提供唯一的数值 ii.

一、序列:是oacle提供的用于产生一系列唯一数字的数据库对象。

a) 序列的特点

i. 自动提供唯一的数值

ii. 共享对象

iii. 主要用于提供主键值

iv. 将序列值装入内存可以提高访问效率

b) 序列的定义

CREATE SEQUENCE sequence

[INCREMENT BY n]

[START WITH n]

[{MAXVALUE N|NOMAXVALUE}]

[{MINVALUE n|NOMINVALUE}]

[{CYCLE |NOCYCLE}]

[{CACHE n|COCACHE}];

二、序列的创建

a) 要有创建序列的权限 create sequence 或 create any sequence

b) 创建序列的语法

CREATE SEQUENCE sequence //创建序列名称

[INCREMENT BY n] //递增的序列值是n 如果n是正数就递增,如果是负数就递减 默认是1

[START WITH n] //开始的值,递增默认是minvalue 递减是maxvalue

[{MAXVALUE n | NOMAXVALUE}] //最大值

[{MINVALUE n | NOMINVALUE}] //最小值

[{CYCLE | NOCYCLE}] //循环/不循环

[{CACHE n | NOCACHE}];//分配并存入到内存中

c) 注意事项

i. NEXTVAL 返回序列中下一个有效的值,,任何用户都可以引用

ii. CURRVAL 中存放序列的当前值

iii. NEXTVAL 应在 CURRVAL 之前指定 ,二者应同时有效

三、序列的使用

a) 将序列值装入内存可提高访问效率

b) 序列在下列情况下出现裂缝:

i. 回滚

ii. 系统异常

iii. 多个表同时使用同一序列

c) 如果不将序列的值装入内存(NOCACHE), 可使用表 USER_SEQUENCES 查看序列当前的有效值

四、修改序列

a) 修改序列的增量, 最大值, 最小值, 循环选项, 或是否装入内存

例:ALTER SEQUENCE dept_deptid_seq

INCREMENT BY 20

MAXVALUE 999999

NOCACHE

NOCYCLE;

Sequence altered.

b) 注意事项

i. 必须是序列的拥有者或对序列有 ALTER 权限

ii. 只有将来的序列值会被改变

iii. 改变序列的初始值只能通过删除序列之后重建序列的方法实现

iv. 使用DROP SEQUENCE 语句删除序列

v. 删除之后,序列不能再次被引用

下载本文
显示全文
专题