Oracle 学习(三)---序列

本文介绍如何进行序列的创建、修改及删除操作。主要内容包括创建序列的语法、如何使用序列实现ID自增长、序列的修改方法以及如何删除序列。此外还介绍了进行这些操作前所需的授权步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



对序列进行创建修改删除等操作前必须进行序列的授权,如下

grant create sequence|select any sequence to user(用户);

一.创建序列


2、  创建序列的语法

CREATE SEQUENCE sequence  //创建序列名称

       [INCREMENT BY n]  //递增的序列值是n 如果n是正数就递增,如果是负数就递减 默认是1

       [START WITH n]    //开始的值,递增默认是minvalue 递减是maxvalue

       [{MAXVALUE n | NOMAXVALUE}] //最大值

       [{MINVALUE n | NOMINVALUE}] //最小值

       [{CYCLE | NOCYCLE}] //循环/不循环

       [{CACHE n | NOCACHE}];//分配并存入到内存中

 

  NEXTVAL 返回序列中下一个有效的值,任何用户都可以引用

  CURRVAL 中存放序列的当前值

  NEXTVAL 应在 CURRVAL 之前指定 ,二者应同时有效


example:


Create sequence test_sequence increment by 1 start with 1 maxvalue 999 minvalue 1 Cycle Cache 2;


使用sequence

insert into test_table (id,name,age) values (text_sequence.nextval,'frank',21);//实现id自增长

序列的修改

grant alter sequence to user(用户);//授权

//修改序列的增量, 最大值, 最小值, 循环选项, 或是否装入内存

alter SEQUENCE sequence  //创建序列名称

       [INCREMENT BY n]  //递增的序列值是n 如果n是正数就递增,如果是负数就递减 默认是1

       [START WITH n]    //开始的值,递增默认是minvalue 递减是maxvalue

       [{MAXVALUE n | NOMAXVALUE}] //最大值

       [{MINVALUE n | NOMINVALUE}] //最小值

       [{CYCLE | NOCYCLE}] //循环/不循环

       [{CACHE n | NOCACHE}];//分配并存入到内存中


example:


Alter sequence test_sequence maxvalue 100000;



索引的删除

drop sequence test_sequence;



对序列进行创建修改删除等操作前必须进行序列的授权,如下

grant create sequence|select any sequence to user(用户);

一.创建序列


2、  创建序列的语法

CREATE SEQUENCE sequence  //创建序列名称

       [INCREMENT BY n]  //递增的序列值是n 如果n是正数就递增,如果是负数就递减 默认是1

       [START WITH n]    //开始的值,递增默认是minvalue 递减是maxvalue

       [{MAXVALUE n | NOMAXVALUE}] //最大值

       [{MINVALUE n | NOMINVALUE}] //最小值

       [{CYCLE | NOCYCLE}] //循环/不循环

       [{CACHE n | NOCACHE}];//分配并存入到内存中

 

  NEXTVAL 返回序列中下一个有效的值,任何用户都可以引用

  CURRVAL 中存放序列的当前值

  NEXTVAL 应在 CURRVAL 之前指定 ,二者应同时有效


example:


Create sequence test_sequence increment by 1 start with 1 maxvalue 999 minvalue 1 Cycle Cache 2;


使用sequence

insert into test_table (id,name,age) values (text_sequence.nextval,'frank',21);//实现id自增长

序列的修改

grant alter sequence to user(用户);//授权

//修改序列的增量, 最大值, 最小值, 循环选项, 或是否装入内存

alter SEQUENCE sequence  //创建序列名称

       [INCREMENT BY n]  //递增的序列值是n 如果n是正数就递增,如果是负数就递减 默认是1

       [START WITH n]    //开始的值,递增默认是minvalue 递减是maxvalue

       [{MAXVALUE n | NOMAXVALUE}] //最大值

       [{MINVALUE n | NOMINVALUE}] //最小值

       [{CYCLE | NOCYCLE}] //循环/不循环

       [{CACHE n | NOCACHE}];//分配并存入到内存中


example:


Alter sequence test_sequence maxvalue 100000;



索引的删除

drop sequence test_sequence;



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值