序列专题

问题的提出:在其他数据库中,比如SQL Server 和 Access 中都有一种自增长的数字类型,用来为主键提供支持,用户可以在增加数据的时候不用考虑主键,但是Oracle数据库中并没有这样的数据类型,Oracle用什么来实现这样的功能呢?

 

答案是:序列

 

1、序列是什么? 

 

数字生成器

 

2、创建序列的语法

 

create sequence 序列的名字

 

minvalue 最小值

 

maxvalue 最大值

 

start with 启动数字

 

increment by 每次增长的数字

 

cache 缓存大小;

 

例如:

 

create sequence sq_person

 

minvalue 1

 

maxvalue 999999

 

start with 1

 

increment by 1

 

cache 10;

 

3、序列的作用?如何使用序列?

 

序列的作用:在插入数据的时候自动生成数字

 

序列的使用:序列名.NEXTVAL

 

insert into person values (sp_person.NEXTVAL,'张三');

 

4、是不是每个序列只能用在一个表上?

 

不是,多个表可以共用一个序列,但是建议为每个表创建单独的序列

 

5、序列生成的数字是连续的吗?它会根据表中的数字而选择数据的大小吗?

 

序列生成的数字是按照创建时指定的方式进行递增的,它不会考虑表中的数据,而是按照自己的形式自动增长

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值