首页 > 创世纪 > 正文

Oracle序列使用教程是什么? oracle怎么查询当前序列的值?

来源:IT资讯网 2023-01-16 16:53:35

Oracle如何使用序列?

Oracle序列(sequence)是一种数据库项,能够生成一个整数序列。通常用于填充数字类型的主键列。

Oracle序列使用教程:

1、创建序列:

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;(默认值)

CREATE SEQUENCE seq_test START WITH 1 INCREMENT BY 2;

2、使用序列:

SELECT seq_test.nextval FROM dual;

insert into order_status2 (id) values (seq_test.nextval);

3、修改序列:

ALTER SEQUENCE语句来修改序列。可以修改的内容:

不能修改序列的初值

序列的最小值不能大于当前值

序列的最大值不能小于当前值

例如:ALTER SEQUENCE seq_test INCREMENT BY 3;

4、删除序列:

DROP SEQUENCE seq_test;

oracle怎么查询当前序列的值?

需要注意的是:

数据库连接成功后,初次执行这句话,会报异常,不能用。

如果不是你的语句单词拼写错误,就是因为没有先执行下边这句sql(select 序列名.nextval from dual;)。

也就是先去获取序列的当前值加上增量后的值。(不知道这是啥情况,没有去研究)

查询序列的值

当刚创建好序列后,不能直接查询当前序列的值,必须先用 nextval 查询下一个序列的值,之后才可以使用currval查询当前序列的值。

查询序列

第一次使用nextval 查询到的值就是 (start with n) .

之后就可以任意使用 currval 了。

当再次查询序列,它的 last_number 变为了序列的下一个值。

标签: Oracle如何使用序列 Oracle序列使用教程 查询当前序列的值 oracle怎么查询当前序列的值

编辑: 尚瑞

最近更新

热点

12月29日,2022首都海智创新链接年度活动暨北京市科协首都海智基地工作交流会顺利召开。活动由北京科技国际交流中心主办,以建家交友 系统布

详细>>

短视频由于短平快特性,很好地适应了当前的新媒体传播环境,成为网络传播主流。近年来,随着短视频兴起,越来越多优秀的视频创作者在各类平

详细>>

近日,百度智能云发布5款云服务器BCC(Baidu Cloud Compute)实例,搭载第三代AMD EPYC 处理器(Milan),旨在面对更多元化的计算应用

详细>>

12月2-4日,由福建省工业和信息化厅、福建省教育厅、福建省人力资源和社会保障厅、福建省商务厅、福建省科学技术厅、福建省总工会、共青团

详细>>

经过二十多年的发展,国产品牌RTK设备厂商迅速成长。如今行业和地产等产业链增长放缓,长期由需求侧拉动的RTK设备市场想要得到进一步的发展

详细>>

11月25日,开迈斯-支付宝充电站发布与落成典礼在杭州市滨江区智选假日酒店隆重举行,开迈斯新能源科技有限公司投后运营总监张震宇与会热烈致

详细>>