ORACLE数据库入门再在屋里坐会 (10)

      在oracle中sequence就是所谓的序列号,每次取的时候它会自动增加,一般用在需要按序列号排序的地方;Oracle的序列(SEQUENCE)类似SQLServer中的自动增长列,用来生成唯一,连续的整数的数据库对象,序列通常用来生成主键或唯一值,并且可以排序。

2、语法

      CREATE SEQUENCE sequence_name

      INCREMENT BY 1                                    --每次加几个 默认 1

      START WITH 1                                   --从 1 开始计数 默认 1

      [MAXVALUE 值|NOMAXVALUE]         --设置最大值 默认最大 10E27

      [MINVALUE 值|NOMINVALUE]           --设置最小值 默认最小-10E26

      [CYCLE|NOCYCLE]                          --一直累加,不循环

      [CACHE 10|NoCYCLE]                             --使序列号预分配

      [Order|NoOrder 默认]

eg:

      CREATE SEQUENCE seq_test 

             INCREMENT BY 1              --每次加几个 

             START WITH 1                    --从1开始计数 

             NOMAXVALUE                   --不设置最大值 

             NOCYCLE                           --一直累加,不循环 

             CACHE 10                             --使序列号预分配10个数,默认NOCACHE

3、访问序列的值

      NEXTVAL:返回序列的下一个值

      CURRVAL:返回序列的当前值

      select 序列.nextval from dual

      select 序列.currval from dual

      select seq_test.nextval from dual

      select seq_test.currval from dual

4、使用

      insert into 表名(自动增长的字段) values (序列名称.nextval)

5、修改

      alter sequence 序列名称 increment by 2;  

      alter sequence seq_test increment by 2;

      每次加2

      1)不能修改序列的初始值

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

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

5、删除序列

  drop sequence 序列名称

表分区 1、概述

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyzwgw.html