序列即sequence,官方英文解释为
A sequence, which is an object from which multiple users may generate unique integers. You can use sequences to automatically generate primary key values.
大概意思是这一个多数用户用来产生唯一整数的对象,你可以用序列来自动生成主键的数值。
创建序列的语句:
CREATE SEQUENCE [name]
START WITH [begin number]
INCREMENT BY [increase gap];
eg:CREATE SEQUENCE patron_id_seq --创建一个从100开始,步长为1的序列。
START WITH 100
INCREMENT BY 1;
--删除序列:
drop SEQUENCE [NAME];
--使用序列产生的值
1、INSERT INTO patrons VALUES (patron_id_seq.nextval, 'Smith', 'Jane', '123 Main Street', 'Mytown, MA 01234', null);
2、select patron_id_seq.nextval into cid from dual;
--sequence.currval为获取序列当前的值。
select patron_id_seq.currval from dual;
这里介绍小dual是个什么样的东西。
dual是oracle中的一个伪表,就是实际上并不存在于主题数据库中的表。只是方便我们做一些操作。
比如执行select 语句时必须要指定from的object,这时指定dual即可。
例:计算6*5的值
select 6*5 from dual;