创建序列
create sequence TEST --序列名
minvalue 1 --定义序列生成器能产生的最小值。选项NOMAXVALUE是默认选项,代表没有最小值定义,这时对于递减序列,系统能够产生的最小值是?10的26次方;对于递增序列,--最小值是1。
maxvalue 999999999999999999999999999 --定义序列生成器能产生的最大值。选项NOMAXVALUE是默认选项,代表没有最大值定义,这时对于递增Oracle序列,系统能够产生的最--大值是10的27次方;对于递减序列,最大值是-1。
start with 1 --定义序列的初始值(即产生的第一个值),默认为1。
increment by 1 --INCREMENT BY用于定义序列的步长,如果省略,则默认为1,如果出现负值,则代表Oracle序列的值是按照此步长递减的。
nocache --不缓存到内存里,如果要缓存,可以用【cache 缓存大小】来代替nocache
cycle--表示当序列生成器的值达到限制值后是否循环。CYCLE代表循环,NOCYCLE代表不循环。如果循环,则当递增序列达到最大值时,循环到最小值;最小值为1。对于递减序---列达到最小值时,循环到最大值。如果不循环,达到限制值后,继续产生新值就会发生错误。
order;--排序,不需要可以不加这个选项
其他
一、cache
如果指定CACHE值,ORACLE就可以预先在内存里面放置一些sequence,这样存取的快些.cache里面的取完后,oracle自动再取一组到cache.使用cache或许会跳号,比如数据库突然不正常down掉(shutdown abort),cache中的sequence就会丢失. 所以可以在create sequence的时候用nocache防止这种情况。
二、order
1.保证序列号按请求顺序产生.如果你想以序列号作为timestamp(时间戳)类型的话,可以采用该选项.对于将序列用于生成主键来说,约定顺序通常并不重要.
2.ORDER和NOORDER的区别表现在并行服务和独占服务之间.打个比方:双CPU对同一个oracle DB中的ABC sequence申请序号时,这时就有两个请求A和B,假设A请求在前B在后,现在ABC序列中的值为9.如果添加了ORDER选项,那么一定是A请求到9,B请求到10.但如果没有添加此选项,则有可能B请求到9,A请求到10. 在单CPU中,可以用Java摸拟多线程作测试
三、操作序列
查询序列当前值和下一个值
SELECT
序列.CURRVAL,序列.NEXTVAL FROM DUAL;
删除序列
DROP SEQUENCE [schema].序列名;
分享到:
相关推荐
在本篇中,我们将深入探讨Oracle序列的创建、修改和删除。 ### 1. 序列的创建 创建序列的基本语法如下: ```sql CREATE SEQUENCE sequence_name START WITH n -- 起始值 INCREMENT BY n -- 增量值 MINVALUE n ...
### Oracle 使用序列创建自增字段 在数据库设计与开发中,自增字段是十分常见的需求之一,尤其是在需要为每一行记录自动分配一个唯一编号的情况下。Oracle 数据库通过序列(Sequence)这一特性支持自增字段的实现。...
### 二、Oracle序列 序列是Oracle提供的一种自动生成唯一数值的机制,常用于为主键或需要唯一标识符的列自动分配值。在实验中,虽然没有明确展示序列的创建与使用,但可以利用`CREATE SEQUENCE`语句来创建一个序列...
本文将详细介绍Oracle数据库中序列的创建、修改以及删除方法,并通过一个具体的示例来演示序列的使用。 #### 序列的基本概念 序列是一种能够按需生成连续整数的数据库对象。它可以用于自动填充某些字段,特别是当...
### Oracle 创建表与序列知识点详解 #### 一、Oracle创建表的基本语法与示例解析 ...以上是关于Oracle创建表和序列的一些基本示例及详细解析。这些知识点对于实际工作中的数据库设计和维护具有重要的指导意义。
删除序列则使用 `DROP SEQUENCE` 语句。 综上所述,索引优化查询速度,视图提供数据抽象和安全,同义词简化引用,序列生成唯一标识符。这些概念在 Oracle 数据库管理中都扮演着至关重要的角色,理解和有效利用它们...
### SQL Server 中创建类似 Oracle 序列的存储过程 #### 背景介绍 在数据库管理系统(DBMS)中,序列是一种自增的数据结构,常用于自动产生唯一标识符(如ID)。Oracle 数据库提供了非常方便的序列机制,而 SQL ...
Oracle 中创建表、序列、自增字段、添加注释、添加记录、添加触发器、提交的知识点总结 Oracle 中创建表是指在 Oracle 数据库中创建一个新的表结构,以存储特定的数据。在创建表时,需要指定表的名称、字段名称、...
本文将深入探讨Oracle序列的基本概念、创建方法以及使用技巧。 #### 序列的概念 序列是一种数据库对象,可以按需生成连续的数值。这些数值可以是递增或递减的,并且可以根据设定的最小值和最大值循环生成。序列...
### Oracle 创建序列详解 在Oracle数据库管理中,序列(Sequence)是一种非常实用的对象类型,它主要用于自动生成唯一的数值。...理解并掌握序列的创建、使用、修改和删除对于Oracle数据库开发者来说是非常重要的。
Oracle 同义词和序列 Oracle 数据库中同义词和序列是两个重要概念,然而同义词的概念往往被人忽略。这篇文章将详细讲解同义词和序列的概念,并对其进行详细的介绍。 同义词是指表、视图、序列、过程、函数和包的...
Oracle数据库中的序列(Sequence)是数据库开发者常用的工具,主要用于生成唯一的整数,这些整数通常作为主键或者唯一...通过灵活的创建、修改和删除命令,开发者可以根据需求调整序列的属性,以满足不同的业务场景。
根据给定的部分内容,我们可以看到一个具体的序列创建语句: ```sql CREATE SEQUENCE HIBERNATE_SEQUENCE MINVALUE 0 MAXVALUE 999999999999999999999999999999999999 START WITH 1 INCREMENT BY 1 CACHE 20; ``` ...
#### 一、理解Oracle序列 在开始之前,首先需要了解Oracle中的序列。序列是一个数据库对象,它能够生成连续的整数序列。序列主要用于当需要为表中的某列自动生成唯一值时。例如,在插入新记录时,可以使用序列生成...
创建索引可以显著提升查询性能,但也会占用额外的存储空间,并可能在插入、删除和更新操作时降低性能。 3. 序列(Sequence) 序列是Oracle中生成唯一整数的预定义数据类型。序列可以在不涉及表的情况下生成连续的...
在本篇文章中,我们将深入探讨Oracle序列的工作原理、创建序列的方法以及如何在插入数据时利用序列。 首先,让我们理解序列的基本概念。序列在Oracle中是一个预定义的对象,可以生成一个有序的数字流,这些数字可以...
### Oracle序列和触发器的建立 #### 序列(Sequence) 在Oracle数据库中,序列是一种自动产生数值的对象,常用于为主键字段提供唯一值。序列主要用于实现表中的自增ID功能,例如,当用户需要为某张表的主键设置自...
在本实验中,我们将探讨如何通过Navicat for Oracle设置唯一性和递增序列。 **唯一性约束(Unique Constraint)** 唯一性约束是数据库设计中的一个重要概念,它确保表中的某个字段或多个字段组合具有唯一性,即不...
在Oracle数据库中,序列(Sequences)是一种自动递增或递减的数字生成器,常用于主键生成或...希望这篇文章能帮助你理解和应用Oracle中的序列创建与补零实例,如有任何疑问或需要进一步的信息,欢迎继续探索和讨论。
本篇详细介绍了如何在Oracle数据库中创建一张包含自动增长主键的表`tuser`,并通过创建序列和触发器实现了这一功能。这种做法不仅能够简化主键管理的工作量,还能够确保数据的一致性和完整性。对于实际应用来说,这...