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
(
'123@qq.com'
,
'jack'
,
'123456'
);
|
查询表中的数据
1
|
select
*
from
member;
|