[oracle]序列

简介: [oracle]序列

简介

序列是一种数据库对象,用来自动产生一组唯一序号,一般将序列用于表的主键列。序列是一种共享式的对象,多个用户可以共同使用序列中的序号。

创建序列

CREATE SEQUENCE seq_name INCREMENT BY n
START with n
MAXVALUE n | NOMAXVALUE
MINVALUE n | NOMINVALUE
CYCLE | NOCYCLE
CACHE n | NOCACHE
  • 除了序列名,其它选项都可选。
  • n是整数。
  • INCREMENT,指定递增幅度或递减幅度。
  • START with,从哪个数字开始。
  • MAXCALUE,指定最大值。NOMAXVALUE,没上限。
  • MINVALUE,指定最小值。NOMINVALUE,没下限。
  • CYCLE,序号可以循环使用。NOCYCLE,不得循环使用。
  • CACHE,将接下来的n个序号在内存中缓存,使用户获得序号的速度加快。

删除序列

DROP SEQUENCE seq_name;

修改序列

序列创建之后可以动态修改,比如最大值、最小值、是否可循环等

-- 示例
ALTER SEQUENCE seq_name MAXVALUE 10000 INCREMENT BY 5 CYCLE;

查询序列

SELECT * FROM user_sequences WHERE sequence_name='seq_name';
相关文章
|
存储 SQL Oracle
Oracle数据库批量删除表、视图、序列、存储过程、函数脚本
Oracle数据库批量删除表、视图、序列、存储过程、函数脚本
125 0
|
4月前
|
Oracle 关系型数据库 Java
mybatis使用statement.getGenreatedKeys(); useGeneratedKeys=”true”;使用自增主键获取主键值策略和Oracle不支持自增,Oracle使用序列
mybatis使用statement.getGenreatedKeys(); useGeneratedKeys=”true”;使用自增主键获取主键值策略和Oracle不支持自增,Oracle使用序列
|
5月前
|
SQL 缓存 Oracle
Oracle中序列Sequence详解
Oracle中序列Sequence详解
|
6月前
|
Oracle 关系型数据库 数据管理
Oracle序列:数据世界的“自动售货机”
【4月更文挑战第19天】Oracle序列是数据库中生成唯一数值的关键工具,比喻为数据世界的“自动售货机”。它提供有序、唯一的序列号,适用于需要唯一标识符的场景,如订单号和员工编号。通过设定起始值、增量和最大值,序列能自动化产生新号码,提高效率并减少错误。然而,使用时需注意设置恰当的属性以适应业务需求,并解决并发访问时的冲突问题。熟练掌握序列使用对数据管理至关重要。
|
索引
Oracle-序列、索引和同义词
Oracle-序列、索引和同义词
48 0
|
6月前
|
缓存 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,提高了效率。但使用时需注意序列状态、并发性和性能优化。
|
6月前
|
存储 SQL Oracle
Oracle系列十二:视图、记录、同义词、序列
Oracle系列十二:视图、记录、同义词、序列
|
Oracle 关系型数据库
Oracle自增序列探秘:一篇文章教你读懂
Oracle自增序列探秘:一篇文章教你读懂
201 0
|
缓存 Oracle 关系型数据库
使用序列(Sequence)在 Oracle 数据库中管理唯一标识符
使用序列(Sequence)在 Oracle 数据库中管理唯一标识符
204 0
|
Oracle 关系型数据库 数据库
Oracle序列学习与使用总结
Oracle序列学习与使用总结
156 0