序列

简介: 一、概述 是oracle提供的用于产生一系列唯一数字的数据库对象。 1、自动提供唯一的数值 2、共享对象 3、主要用于提供主键值 4、将序列值装入内存可以提高访问效率二、创建 1、需要权限: create sequence 或 create any sequence 2、语法...

一、概述

是oracle提供的用于产生一系列唯一数字的数据库对象。

1、自动提供唯一的数值
2、共享对象
3、主要用于提供主键值
4、将序列值装入内存可以提高访问效率

二、创建

1、需要权限:

create sequence 或 create any sequence

2、语法:

CREATE SEQUENCE <sequence_name>
      [INCREMENT BY n]
      [START WITH n]
      [{MAXVALUE n | NOMAXVALUE}]
      [{MINVALUE n | NOMINVALUE}]
      [{CYCLE | NOCYCLE}]
      [{CACHE n | NOCACHE}];

3、参数说明

  a) INCREMENT:递增的序列值是n 如果n是正数就递增,如果是负数就递减 默认是1

  b) START WITH:开始的值,递增默认是minvalue 递减是maxvalue

  c) MAXVALUE | NOMAXVALUE:最大值

  d) MINVALUE | NOMINVALUE:最小值

  e) CYCLE | NOCYCLE:循环/不循环

  f) CACHE | NOCACHE:分配并存入到内存中

4、函数说明

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

  b) CURRVAL 中存放序列的当前值

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

三、删除

DROP SEQUENCE <sequence_name>;

四、修改

ALTER SEQUENCE <sequence_name>
      [INCREMENT BY n]
      [START WITH n]
      [{MAXVALUE n | NOMAXVALUE}]
      [{MINVALUE n | NOMINVALUE}]
      [{CYCLE | NOCYCLE}]
      [{CACHE n | NOCACHE}];

修改序列的注意事项:

1、必须是序列的拥有者或对序列有 ALTER 权限

2、只有将来的序列值会被改变

3、改变序列的初始值只能通过删除序列之后重建序列的方法实现

四、查询信息

SELECT * FROM DBA_SEQUENCES;
目录
相关文章
|
3月前
leetcode-187:重复的DNA序列
leetcode-187:重复的DNA序列
28 0
|
9月前
|
C语言
C语言:输入两个升序排列的序列,将两个序列合并为一个有序序列并输出。
描述 输入两个升序排列的序列,将两个序列合并为一个有序序列并输出。 输入描述: 输入包含三行, 第一行包含两个正整数n, m,用空格分隔。n表示第二行第一个升序序列中数字的个数,m表示第三行第二个升序序列中数字的个数。 第二行包含n个整数,用空格分隔。 第三行包含m个整数,用空格分隔。
177 0
C语言:输入两个升序排列的序列,将两个序列合并为一个有序序列并输出。
|
10月前
|
关系型数据库 MySQL 数据库
|
10月前
m 序列(最长线性反馈移位寄存器序列)详解
m 序列(最长线性反馈移位寄存器序列)详解
245 0
|
11月前
|
机器学习/深度学习 Windows
1228 序列求和 (伯努利数)
1228 序列求和 (伯努利数)
64 0
|
存储
[递推]双幂序列、多幂序列、双幂积序列的和
[递推]双幂序列、多幂序列、双幂积序列的和
130 0
[递推]双幂序列、多幂序列、双幂积序列的和
环状序列
环状序列
85 0
|
Python
|
存储 开发者 索引
序列|学习笔记
快速学习 序列
根据序列,进行中后序列输出
根据序列,进行中后序列输出
85 0