Oracle之序列

语法:

CREATE SEQUENCE 序列名称
[MAXVALUE]最大值[NOMAXVALUE]
[MINVALUE]最小值[NOMINVALUE]
[INCREMENT BY 步长][START WITH 起始值]
[CYCLE  |  NOCYCLE]
[CACHE 缓存个数 | NOCACHE];

默认缓存有20个。

序列属于数据库对象的创建过程,属于DDL的分类范畴。
查询user_sequence数据字典
SELECT * FROM user_sequence;

序列名称.nextval:取得序列的下一个值,每一次调用序列的值都会增长;
序列名称.currval:取得序列的当前内容,每一次调用序列的值都不会增长,如果要想使用此伪列,在使用之前要先使用nextval的值才可以。

列子:
SELECT  序列名称.nextval FROM dual;
SELECT  序列名称.currval FROM dual;

CREATE TABLE person(
    id NUMBER,
    uname VARCHAR2(50),
    CONSTRAINT pk_id PRIMARY KEY(id)
);
CREATE SEQUENCE seq_id;
INSERT INTO person(id,uname) VALUES(seq_id.nextval,'五星');

删除序列:

DROP SEQUENCE 序列名称;

--创建缓存序列

CREATE SEQUENCE seq_id
INCREMENT BY 2
START WITH 1
MINVALUE 1 MAXVALUE 100
CYCLE NOCACHE;

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值