Oracle修炼路程--序列

概念:
模拟自增操作,本质是内存中的数组,数组长度默认是20;
[1,2,3,4,…20] [21,22,…40]

语法:
create sequence 系列名
increment by 步长
start with 起始值

maxvalue(适用于循环序列) | nomaxvalue
minvalue | nominvalue
cycle | nocycle(循环序列)
cache n |no cache

属性:
currval:当前值
nextval:下一个值
先nextval再currval;序列是连续的,不会清零;

--创建序列myseq
SQL> create sequence myseq increment by 1 start with 500;

--查看用户下的所有序列
SQL> select *from user_sequences;

SEQUENCE_NAME                   MIN_VALUE  MAX_VALUE INCREMENT_BY C O CACHE_SIZE LAST_NUMBER
------------------------------ ---------- ---------- ------------ - - ---------- -----------
MYSEQ                                   1 1.0000E+28            1 N N         20         500

序列已创建。

--序列的运用
SQL> select myseq.nextval,myseq.currval,ename,sal from emp;

   NEXTVAL    CURRVAL ENAME             SAL
---------- ---------- ---------- ----------
       500        500 SMITH            1200
       501        501 ALLEN            2000
       502        502 QINJIALI_3       1650
       503        503 JONES            4575
       504        504 MARTIN           1650
       505        505 BLAKE            4450
       506        506 CLARK            4050
       507        507 SCOTT            3400
       508        508 KING             7000
       509        509 TURNER           1900
       510        510 ADAMS            1500
       511        511 JAMES            1350
       512        512 FORD             3400
       513        513 MILLER           1700

已选择14行。
--increment by 2 步数是2;
--start with 初始值是1
--maxvalue 9 最大值是9
--minvalue 最小值是1
--cycle 周期
--cache 3 3个一组,个数必须小于元素的个数;

SQL> create sequence myseq2 increment by 2 start with 1 maxvalue 9 minvalue 1 cycle cache 3;

序列已创建。

修改序列

alter sequence 系列名
increment by 步长
start with 起始值

maxvalue(适用于循环序列) | nomaxvalue
minvalue | nominvalue
cycle | nocycle(循环序列)
cache n |no cache

切记:初始值不准修改哦!!

删除序列
drop sequence 序列名;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值