对oracle数据库中的表设置主键自增
2013-10-18 15:07
260 查看
oracle中没有自增字段,可通过序列+触发器间接实现,cmd中sqlplus登录,直接运行即可。一般要经过一下几步:
1建立数据表
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
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;
3创建触发器
CREATE TRIGGER Test_Increase BEFORE
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
1建立数据表
![](http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
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;
3创建触发器
CREATE TRIGGER Test_Increase BEFORE
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
相关文章推荐
- 如何对oracle数据库中的表设置主键自增?
- oracle数据库设置一个自增量主键
- 如何对oracle数据库中的表设置主键自增?
- 如何对oracle数据库中的表设置主键自增?
- 2017年2月21日 Oracle数据库,怎么设置表中主键的自增
- oracle数据库中为已经存在表的主键ID设置自增
- oracle数据库中的表设置主键自增
- 如何对oracle数据库中的表设置主键自增?
- 如何对oracle数据库中的表设置主键自增?
- 设置GridView列名中文显示 及DataTable根据主键获取行记录
- Mysql,SqlServer,Oracle主键自动增长的设置
- 复主键使用NEW构造函数的双参数设置
- 为表建立一个主键,设置子增量主键,了解常用数据表字段类型
- DATAGRID 设置表的主键 添加询问“…
- oracle数据库Profile设置及audit异常账户
- SQL-已存在数据的表主键设置递增
- SQLite设置主键自动增长及插入语法
- oracle 主键自增 设置----杜恩德
- 设置sqlplus访问远程oracle数据库的最快方法
- oracle数据库归档与非归档设置