Oracle中序列

来源:互联网 发布:开淘宝网店怎样找货源 编辑:程序博客网 时间:2024/06/06 01:03

Oracle序列

序列用途

序列:Oracle提供用于产生一系列唯一数字的数据库对象。

1.      自动提供唯一的数值

2.      共享对象

3.      主要用于提供主键值

4.      把序列值装入内存可以提高数据的访问效率

序列创建

创建序列需要权限:创建序列的权限 create sequence 或 createany sequence

 

--创建序列的语法--

create sequence sequence_name

--递增的序列值是n,如果n是正数就递增,如果是负数就递减,默认是1不可为0

[increment by n]

--开始的值,递增默认是minvalue递减是maxvalue

[start with n]

--最大值

[max  value n|no  max value]

--最小值

[min  value n|no  min  value]

--循环、不循环

[{cycle |nocycle}]

--分配并存入到内存中

[{cache |nocache}]

 

 

--实际案例使用--

--创建表

create table mySqe(

       s_idnumber(6),

       s_namevarchar2(30),

       constraint pk_id primarykey(id)

);

--创建序列

create   sequence seq_mySqe

increment  by  1

start   with1

max  value9999

min  value1

no  cycle

no  cache

--把序列放入表中

insert into mySqevalues(seq_mySqe,"fe");

序列修改

注意:

1.      必须是序列的拥有者或者对序列有alter权限

2.      修改序列只会影响后面的序列值,不影响已经使用的序列值

3.      改变序列的初始值只能是删除序列后重新创建的

 

--修改序列的语法--

alter sequence sequence_name

--递增的序列值是n,如果n是正数就递增,如果是负数就递减,默认是1不可为0

[increment by n]

--开始的值,递增默认是minvalue递减是maxvalue

[start with n]

--最大值

[max  value n|no  max  value]

--最小值

[min  value n|no  min  value]

--循环、不循环

[{cycle |nocycle}]

--分配并存入到内存中

[{cache |nocache}]

删除序列

序列被删除后不能再被引用

--删除序列语法--

drop sequence sequence_name

1 0
原创粉丝点击