欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

在oracle中创建自动增长字段

程序员文章站 2022-07-07 20:51:29
oracle在创建表时和其他的数据库有点不一样,MySql中可以使用“auto_increment”即可。但是oracle有点麻烦,需要使用序列和触发器达到目的。 具体步骤如下: 一、创建数据表create table employee(Id int ,DeptNo number,EmpNo num ......

oracle在创建表时和其他的数据库有点不一样,mysql中可以使用“auto_increment”即可。但是oracle有点麻烦,需要使用序列和触发器达到目的。

具体步骤如下:

一、创建数据表
create table employee(
id int ,
deptno number,
empno number,
ename varchar2(16),
job varchar2(32),
sal float,
hiredate date,
constraint pk_employee primary key(empno)
);

二、创建员工表自动增长序列
create sequence employee_autoinc
minvalue 1
maxvalue 9999999999999999999999999999
start with 1
increment by 1
nocache;

三、创建触发器将序列中的值赋给插入employee表的行
create or replace trigger insert_employee_autoinc
before insert on employee
for each row
begin
select employee_autoinc.nextval into :new.id from dual;
end insert_employee_autoinc;
/

四、验证
insert into employee(deptno,empno,ename,job,sal,hiredate) values(520,5201002,'james zhou','pd',6000,to_date('2012-10-22','yyyy-mm-dd'));
insert into employee(deptno,empno,ename,job,sal,hiredate) values(521,5211314,'xc','boss',90000,sysdate);

五、结果截图

在oracle中创建自动增长字段