在oracle数据库的建表中,Sequences值的目的是什么

2024-12-13 16:23:36
推荐回答(5个)
回答1:

Sequences目的,就是得到一个自动递减或递增的值。
Sequences就是一个计数器,类似于Sql Server数据库中自动增加的数字。
因为Oracle数据库中,建表的时候,没有自动增量的这样一个数字类型字段,
所以有时候需要用到这类字段的时候,就要调用Sequences来取得值。
Sequences可以设置为,当使用到设定的最大值时,是否重新开始循环使用。
调用时,直接写在Sql里即可,比如:
select sequence.NEXTVAL from dual;

回答2:

sequence的目的就是设置某一列自增长。

创建方法:

1、Create Sequence 
首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE权限。

CREATE SEQUENCE  SI_EXTERNAL_SEQ  --SI_EXTERNAL_SEQ要创建的sequence的名字
INCREMENT BY 1 --每次加几个 
START WITH 1 -- 从1开始计数 
NOMAXVALUE -- 不设置最大值 
NOCYCLE -- 一直累加,不循环 
CACHE 10;

2、read Sequence

Select SI_EXTERNAL_SEQ.Nextval As hao from dual;--每次需要变的只有SI_EXTERNAL_SEQ这个sequence的名字

这样每次读出来的sequence都比上一个自增1个.

回答3:

Sequences是一种序列,基本用它的地方都是结合触发器来用,自增序列和自减序列

比如在表中插入一条数据时 给表中的一个字段自动赋值 就是通过序列完成的

回答4:

以我现在的认识是,可以把序列的值插入到列中作为每列的id号,这个id号自动增长。序列是独立的,下次再用或插入到不同表,他的值都是顺序且不重复的。你用到了才会体会到这种机制的好处

回答5:

Sequences自动增长
比如:
ID NAME
1 SS11
2 DDSS
3 SSAA
4 DDAA
上面的这张表,ID这个列是顺序增长的,就可以用Sequences