1、序列的用途:
序列具有不重复性,因此可以将序列在作为主键,保证主键不重复
2、如何创建序列:
create sequence myseq; // myseq.currval:当前值 myseq.nextval:下一值
可以使用 ed myseq 查看序列相关信息
3、使用序列:
第一次: select myseq.nextval from dual; // 要先移动,类似链表指针
获取第一个值:
select myseq.currval from dual;
获取第二个值:
select myseq.nextval from dual;
获取第三个值:
select myseq.nextval from dual;
4、将序列作为主键:
(1)创建序列:
create sequence myseq;
(2)创建主键:
alter table 表名 add constraint 主键名 primary key (主键对应的列);
(3)给主键插入序列:
insert into 表名 value(myseq.nextval, 需插入主键的值);
5、 删除序列:
drop sequence myseq;