oracle数据库中的表设置主键自增
Posted xijin_wu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle数据库中的表设置主键自增相关的知识,希望对你有一定的参考价值。
oracle中没有自增字段,可通过序列+触发器间接实现,cmd中sqlplus登录,直接运行即可。一般要经过一下几步:
1建立数据表
create table Test_Increase(
userid number(10) primary key, /*主键,自动增加*/
username varchar2(20)
);
2创建自动增长序列
CREATE SEQUENCE TestIncrease_Sequence
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加,不循环
CACHE 10;
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加,不循环
CACHE 10;
3创建触发器
CREATE TRIGGER Test_Increase BEFORE
insert ON Test_Increase FOR EACH ROW
begin
select TestIncrease_Sequence.nextval into:New.userid from dual;
end;
insert ON Test_Increase FOR EACH ROW
begin
select TestIncrease_Sequence.nextval into:New.userid from dual;
end;
4 提交
commit;
5 测试
反复执行如下语句:
insert into Test_Increase(Username) values(\'test\')
6 查看插入结果:
userid username
1 test
2 test
3 test
4 test
5 test
6 test
7 test
8 test
9 test
转:http://blog.163.com/xuxiaoqianhz@126/blog/static/165190577201082910371842/
以上是关于oracle数据库中的表设置主键自增的主要内容,如果未能解决你的问题,请参考以下文章