`

Oracle创建序列 sequence

阅读更多

Oracle中的序列号顾名思义就是创建一个序列号,可以在插入或者更新的时候调用,相当于是一个生成器
创建语法:
create sequence myse
increment by 1       --增长度
start with 1         --从哪里增加,就是说下一个获取的值从这个值开始
nomaxvalue           --不设置最大值   对应的:maxvalue  30、
order                --指定一定往下增加
nocycle              --不循环,CYCLE和NOCYCLE 表示当序列生成器的值达到限制值后是否循环
cache  10           --CACHE(缓冲)定义存放序列的内存块的大小,默认为20。NOCACHE表示不对序列进行内存缓冲。对序列进行内存缓冲,可以改善序列的性能

修改:
序列的某些部分也可以在使用中进行修改,但不能修改SATRT WITH选项。对序列的修改只影响随后产生的序号,已经产生的序号不变。修改序列的语法如下:
ALTER SEQUENCE emp_sequence
INCREMENT BY 10
MAXVALUE 10000
CYCLE -- 到10000后从头开始
NOCACHE ;


需注意:
第一次NEXTVAL返回的是初始值;随后的NEXTVAL会自动增加你定义的INCREMENT BY值,然后返回增加后的值。CURRVAL 总是返回当前SEQUENCE的值,但是在第一次NEXTVAL初始化之后才能使用CURRVAL,否则会出错。一次NEXTVAL会增加一次SEQUENCE的值,所以如果你在同一个语句里面使用多个NEXTVAL,其值就是不一样的。

删除:

DROP SEQUENCE order_seq;

分享到:
评论

相关推荐

    Oracle sequence 重置(失效恢复)

    **Oracle Sequence** 是一种数据库对象,用于生成连续的整数序列。它可以被用来作为表中某一列的自动增长字段,例如主键ID。Sequence的主要优点是简单易用且性能高效。 #### 二、Sequence失效的原因 1. **数据迁移...

    oracle中的sequence实现主键增长

    Oracle中的Sequence是数据库管理系统提供的一种机制,用于生成序列化的整数,通常用于主键或唯一标识符,确保数据的唯一性和有序性。在Oracle中,Sequence不同于其他数据库系统的自增字段,例如SQL Server中的`...

    oracle 创建id主键序列 脚本

    一、创建序列脚本 在Oracle中,创建一个序列可以使用`CREATE SEQUENCE`语句。下面是一个基本的创建序列的脚本示例: ```sql CREATE SEQUENCE seq_id START WITH 1 INCREMENT BY 1 MINVALUE 1 MAXVALUE ...

    oracle 主键自增 sequence

    ### Oracle 主键自增 Sequence 的实现与应用 #### 一、Sequence 的概念及用途 在 Oracle 数据库中,`Sequence` 是一种用于生成一系列唯一数值的对象。这些数值可以按照特定的规则递增或递减,并且可以设定是否循环...

    oracle 建表 建序列

    #### 二、Oracle创建序列及其应用示例 序列是一种自动递增或递减的数字对象,通常用于生成唯一的标识符。下面将详细介绍创建序列的方法及应用实例。 ##### 创建序列示例 ```sql CREATE SEQUENCE id INCREMENT BY ...

    Oracle创建序列的方法及技巧.doc

    在Oracle中,创建序列可以帮助我们自动化生成唯一标识符,避免手动管理这些值,尤其在需要大量插入新记录时,序列的使用极大地提高了效率和准确性。 创建序列的基本语法如下: ```sql CREATE SEQUENCE sequence_...

    oracle 创建序列

    ### Oracle 创建序列详解 在Oracle数据库管理中,序列(Sequence)是一种非常实用的对象类型,它主要用于自动生成唯一的数值。序列可以被多个用户共享,并且在并发环境中也能保持良好的性能。本文将详细介绍如何在...

    Oracle 创建和使用序列

    --创建序列 create sequence seq_user start with 1 increment by 1 nomaxvalue cache 10; --使用序列 insert into user_table(user_id,user_name,user_pwd) vlaues(seq_user.nextval,'tcy','tcy'); --修改...

    oracle序列创建、修改、删除

    - 创建序列需要相应的权限,如`CREATE ANY SEQUENCE`或`CREATE SEQUENCE`。 - 若未指定选项,序列默认从1开始,每次递增1,无最大值限制。 - 序列的最大值为38位整数。 ### 2. 序列的使用 序列提供了两个主要函数...

    Oracle使用序列创建自增字段

    ### 创建序列 (Create Sequence) #### 基本语法与示例 在 Oracle 中,序列是一个用于生成一系列数字的对象,通常用于为表中的某一列提供连续的数值。创建序列的基本语法如下: ```sql CREATE SEQUENCE sequence_...

    oracle中sequence介绍及应用

    在Oracle数据库中,Sequence是一种用于自动产生数值序列的对象。它可以生成连续的整数或者非连续的整数序列,并且可以根据需求进行递增或递减。Sequence常用于为表中的某列自动生成唯一的主键值或者作为流水号使用。...

    oracle索引、序列和权限设置

    在实验中,虽然没有明确展示序列的创建与使用,但可以利用`CREATE SEQUENCE`语句来创建一个序列,例如: ```sql CREATE SEQUENCE sequence_name START WITH initial_value INCREMENT BY increment_value MINVALUE...

    浅谈MyBatis-Plus学习之Oracle的主键Sequence设置的方法

    为了实现Sequence,我们需要在Oracle数据库中创建一个序列对象,例如: ```sql CREATE SEQUENCE seq_user START WITH 1; ``` 这里创建了一个名为`seq_user`的Sequence,从1开始递增。 2. **配置MyBatis-Plus*...

    oracle 不用新建序列 重置序列(从1开始增长)

    在Oracle中,通常的做法是创建一个新的序列,但这可能会带来额外的管理工作,尤其是在频繁需要重置序列的场景下。 本文将详细介绍如何在不新建序列的情况下,实现Oracle序列的重置,让其从1开始增长。这种方法通过...

    mysql生成oracle序列

    在数据库领域中,不同数据库管理系统(DBMS)之间存在显著差异,比如Oracle与MySQL在处理序列(sequence)的方式上就有本质的不同。Oracle提供了内置的支持来管理自动递增的数字序列,而MySQL并没有原生支持序列这一特性...

    使用JDeveloper开发WEB应用时同时使用Oracle的sequence和trigger

    1. **创建Sequence**:在JDeveloper的数据库视图中,你可以连接到Oracle数据库并使用DDL(Data Definition Language)创建sequence。编写类似`CREATE SEQUENCE seq_name START WITH 1 INCREMENT BY 1`的SQL语句,...

    oracle_sequence.rar_oracle

    创建Oracle序列使用CREATE SEQUENCE语句。例如,以下语句创建了一个名为"SEQ_TEST"的递增序列,初始值为1,每次增长1: ```sql CREATE SEQUENCE SEQ_TEST START WITH 1 INCREMENT BY 1; ``` 你可以根据需求调整序列...

    sqlserver中创建类似oracle序列的存储过程

    ### SQL Server 中创建类似 Oracle 序列的存储过程 #### 背景介绍 在数据库管理系统(DBMS)中,序列是一种自增的数据结构,常用于自动产生唯一标识符(如ID)。Oracle 数据库提供了非常方便的序列机制,而 SQL ...

    oracle导出序列

    创建序列的基本语法如下: ```sql CREATE SEQUENCE sequence_name START WITH start_value INCREMENT BY increment_value MINVALUE min_value MAXVALUE max_value CYCLE | NOCYCLE CACHE cache_size | NO...

    ORACLE SEQUENCE的简单介绍

    一旦创建了 Sequence,就可以通过 `NEXTVAL` 和 `CURRVAL` 方法来获取和使用这些序列值: - `NEXTVAL`:每次调用时都会返回序列的下一个值,并且自动更新序列的当前值。 - `CURRVAL`:返回序列的当前值。需要注意的...

Global site tag (gtag.js) - Google Analytics