初试Oracle序列,体验如何?

2026-05-22 09:522阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计456个文字,预计阅读时间需要2分钟。

初试Oracle序列,体验如何?

什么是序列?

序列是一个计数器,它不会与任何特定的表关联。通过创建Oracle序列和触发器实现表的主键自增。

序列的用途一般用来填充主键和计数可变。创建序列:

sqlcr sequence cr

什么是序列?

  • 序列是一个计数器,它并不会与特定的表关联。通过创建Oracle序列和触发器实现表的主键自增。
  • 序列的用途一般用来填充主键和计数可以自增也可以自减。

创建序列

create sequence A // 创建序列名:A start with 1 // 让A从1开始 increment by 1 // A每次增长1 maxvalue 999999 // 若为nomaxvalue表示不设置最大值。 ---最大值 minvalue 1 // 最小值 cycle / nocycle // nocycle:表示一直累加,不循环 ;cycle:表示循环 cache n / nocache // 缓存。cache 10 表示一次产生10个号

删除序列
语法是:
DROP SEQUENCE A; //表示删除A序列

查看序列
select A.currval from dual;

序列修改

  • 不能修改序列的初始值,否则会报ORA-02283:

尝试更改序列A的初始值:

SQL> alter sequence A start with 2; alter sequebce A start with 2;

ORA-02283: 无法更改启动序列号

修改失败。

修改序列A的增长速度:

SQL> alter sequence A increment by 2; Sequence altered

修改成功!

使用序列

初试Oracle序列,体验如何?

create table A ( id int(4) primary key; a varchar2(8); b varchar2(8); ); create sequence B start with 1 increment by 1 insert into A values(B.Nextval,'1','2'); or insert into A values(B.Nextval,1,2);//这种写法并不规范。建议第一种! id a b 2 1 2

本文共计456个文字,预计阅读时间需要2分钟。

初试Oracle序列,体验如何?

什么是序列?

序列是一个计数器,它不会与任何特定的表关联。通过创建Oracle序列和触发器实现表的主键自增。

序列的用途一般用来填充主键和计数可变。创建序列:

sqlcr sequence cr

什么是序列?

  • 序列是一个计数器,它并不会与特定的表关联。通过创建Oracle序列和触发器实现表的主键自增。
  • 序列的用途一般用来填充主键和计数可以自增也可以自减。

创建序列

create sequence A // 创建序列名:A start with 1 // 让A从1开始 increment by 1 // A每次增长1 maxvalue 999999 // 若为nomaxvalue表示不设置最大值。 ---最大值 minvalue 1 // 最小值 cycle / nocycle // nocycle:表示一直累加,不循环 ;cycle:表示循环 cache n / nocache // 缓存。cache 10 表示一次产生10个号

删除序列
语法是:
DROP SEQUENCE A; //表示删除A序列

查看序列
select A.currval from dual;

序列修改

  • 不能修改序列的初始值,否则会报ORA-02283:

尝试更改序列A的初始值:

SQL> alter sequence A start with 2; alter sequebce A start with 2;

ORA-02283: 无法更改启动序列号

修改失败。

修改序列A的增长速度:

SQL> alter sequence A increment by 2; Sequence altered

修改成功!

使用序列

初试Oracle序列,体验如何?

create table A ( id int(4) primary key; a varchar2(8); b varchar2(8); ); create sequence B start with 1 increment by 1 insert into A values(B.Nextval,'1','2'); or insert into A values(B.Nextval,1,2);//这种写法并不规范。建议第一种! id a b 2 1 2