oracle建表设置主键自增

oracle建表设置主键自增
 
首先创建一张表
 
?
1
2
3
4
5
6
create table member(
memberId number primary key ,
memberMail varchar2(20) not null ,
memberName varchar2(20) not null ,
memberPassword varchar2(20)
);

 

 
然后,你需要一个自定义的sequence
?
1
2
3
4
5
6
CREATE SEQUENCE emp_sequence
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加,不循环
NOCACHE -- 不建缓冲区

 

 
你只有了表和序列还不够,还需要一个触发器来执行它!代码如下:
?
1
2
3
4
5
6
7
create trigger mem_trig before
insert on member for each row when (new.memberId is null )
begin
 
  select emp_sequence.nextval into :new.memberId from dual;
 
  end ;

 

这样就可以就可以了,插入数据测试
 
?
1
insert into member(memberMail,memberName,memberPassword) values ( '[email protected]' , 'jack' , '123456' );

 

 
 
 
查询表中的数据
 
?
1
select * from member;

 

 

猜你喜欢

转载自lixgjob.iteye.com/blog/2306949