Oracle数据库实现自增长列

SqlServer 和MySql都有自增长的功能,而Oracle必须接结合sequence序列(一般用于主键列),并使用触发器才能够实现自动增长,具体步骤如下:

一、建表
create table list(id number,name varchar2(50));

二、创建序列

  1. create sequence list_seq
  2. minvalue 1
  3. maxvalue 99999999999999
  4. start with 1
  5. increment by 1
  6. cache 20
  7. order

创建序列图解

三、创建触发器

  1. Create or replace trigger list_tg
  2. Before insert on list
  3. For each row
  4. Begin
  5. Select list_seq.nextval into :new.id from dual;
  6. End;
  7. /

创建触发器步骤1
创建触发器步骤2

四、插入数据
Insert into list values(”,’aaa’);
Insert into list values(”,’bbb’);
Select * from list ;
结果为:
ID     name
1     aaa
2     bbb

在Oracle 10g 的em 操作界面按照上图配置即可实现自增长序列,数据库端设置完成;在插入数据时自增长字段可由空值’ ’或null代替,如果insert 语句中列出了所插入的字段,如insert into list(name) values(’aaa’),则增长字段不用写 ;如模板所示为一简单的表单,ID字段绑定数据库中的自增长列,BS填报时,id字段不输入若输入任意数字时,数据库中都按照自增长的规律进行赋值,如下图所示:
oracle中插入数据1

oracle中插入数据2

oracle中插入数据3

立即发现·数据价值

推荐阅读

→ 一款简单、实时、酷炫的图表制作软件

→ 对企业而言,为何要选择优质的内部报表系统?

→ 可视化分析平台对企业作用几何?

→ 3张报表搞定财务分析

→ FineReport报表和水晶报表的比较

→ BIRT报表深度解析之BIRT中国企业级用户流失之谜

→ 谈谈数据决策平台搭建的必要性

→ 报表平台对CRM系统价值几何

→ 如何搭建科学的MES报表系统?

→ 自定义报表之自定义参数界面

版权所有©2016 南京帆软软件有限公司 | 苏ICP备14031611号-3

返回顶部