Oracle——22序列(sequence)

简介: 当一个序列第一次被调用时,它将返回一个预定值,在以后的每一次查询调用中,序列将产生一个按其指定的增量得到的值。 1、创建序列 语法格式如下: create sequence [schema.

当一个序列第一次被调用时,它将返回一个预定值,在以后的每一次查询调用中,序列将产生一个按其指定的增量得到的值。

1、创建序列

语法格式如下:

			create sequence [schema.]sequence_name
			[increment by incre_value] --每次的增量,默认是1*/
			[start with start_value] --初始值*/
			[maxvalue integer | nomaxvalue] --最大值*/
			[minvalue integer | nominvalue] --最小值*/
			[cycle | nocycle] --是否循环*/
			[cache integer | nocache] --缓冲设置*/
			[order | noorder] --序列号是否按照顺序生成*/
 

示例代码:

			create sequence mysequence increment by 2 start with 1;
 

2、序列的使用

在创建了序列之后,每次通过调用sequence_name.nextval都会返回一个值。

示例代码:

			select mysequence.nextval from dual;
 

2、修改序列

语法格式如下:

			alter sequence [schema.]sequence_name
			[increment by integer_value]
			[maxvalue integer | nomaxvalue]
			[minvalue integer | nominvalue]
			[cycle | nocycle]
			[cache integer | nocache]
			[order | noorder]
 

示例代码:

			alter sequence mysequence increment by 1 maxValue 1000;
 

3、删除序列

语法格式如下:

			drop sequence sequence_name;
 

示例代码:

			drop sequence mysequence;
 


目录
相关文章
|
存储 SQL Oracle
Oracle数据库批量删除表、视图、序列、存储过程、函数脚本
Oracle数据库批量删除表、视图、序列、存储过程、函数脚本
138 0
|
4月前
|
缓存 Oracle 关系型数据库
[oracle]序列
[oracle]序列
|
5月前
|
Oracle 关系型数据库 Java
mybatis使用statement.getGenreatedKeys(); useGeneratedKeys=”true”;使用自增主键获取主键值策略和Oracle不支持自增,Oracle使用序列
mybatis使用statement.getGenreatedKeys(); useGeneratedKeys=”true”;使用自增主键获取主键值策略和Oracle不支持自增,Oracle使用序列
|
7月前
|
SQL Oracle 关系型数据库
整合Mybatis-Plus高级,Oracle 主键Sequence,Sql 注入器实现自定义全局操作
整合Mybatis-Plus高级,Oracle 主键Sequence,Sql 注入器实现自定义全局操作
151 0
|
6月前
|
SQL 缓存 Oracle
Oracle中序列Sequence详解
Oracle中序列Sequence详解
|
索引
Oracle-序列、索引和同义词
Oracle-序列、索引和同义词
53 0
|
7月前
|
Oracle 关系型数据库 数据管理
Oracle序列:数据世界的“自动售货机”
【4月更文挑战第19天】Oracle序列是数据库中生成唯一数值的关键工具,比喻为数据世界的“自动售货机”。它提供有序、唯一的序列号,适用于需要唯一标识符的场景,如订单号和员工编号。通过设定起始值、增量和最大值,序列能自动化产生新号码,提高效率并减少错误。然而,使用时需注意设置恰当的属性以适应业务需求,并解决并发访问时的冲突问题。熟练掌握序列使用对数据管理至关重要。
|
7月前
|
缓存 Oracle 关系型数据库
Oracle中的触发器与序列:自增列的魔法组合
【4月更文挑战第19天】Oracle数据库中,通过触发器和序列的组合可实现自增列功能。序列充当自动计数器,提供递增数值,而触发器则在插入新记录时自动分配序列值。创建序列如`CREATE SEQUENCE emp_seq START WITH 1 INCREMENT BY 1 NOCACHE`,然后创建触发器`TRIGGER trg_employees_before_insert`在`BEFORE INSERT`时将序列的下一个值赋予`employee_id`。这种方式使得在插入记录时无需手动设置ID,提高了效率。但使用时需注意序列状态、并发性和性能优化。
|
7月前
|
存储 SQL Oracle
Oracle系列十二:视图、记录、同义词、序列
Oracle系列十二:视图、记录、同义词、序列
|
Oracle 关系型数据库
Oracle自增序列探秘:一篇文章教你读懂
Oracle自增序列探秘:一篇文章教你读懂
207 0