文档章节

如何对oracle数据库中的表设置主键自增?

自由的角马
 自由的角马
发布于 2015/01/10 13:57
字数 197
阅读 17
收藏 0

oracle中没有自增字段,可通过序列+触发器间接实现,cmd中sqlplus登录,直接运行即可。一般要经过一下几步:

1建立数据表


create table Test_Increase(
           userid 
number(10primary 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

本文转载自:http://blog.csdn.net/luoweifu/article/details/17123879

自由的角马
粉丝 1
博文 269
码字总数 0
作品 0
文山
私信 提问
mybatis自增主键配置

mybatis自增主键配置 mybatis进行插入操作时,如果表的主键是自增的,针对不同的数据库相应的操作也不同。基本上经常会遇到的就是 Oracle Sequece 和 MySQL 自增主键,至于其他的手动生成唯一...

李永china
2016/05/20
4
0
Oracle 10G中关于序列使用详解.

Oracle 10G中关于序列使用详解. 数据库设计的三大范式第一条就是独立的表结构中必须有唯一主键来标识表中数据.在以往微软的SQL Server(duo版本)平台上.手动编码实现表中主键.并设定为自增列是...

猴子
2011/11/10
0
0
我的oracle主键解决方案是否正确

之前的数据库是mysql5的,使用hibernate没有任何错误。 最近自己再尝试做一个项目,数据库换成了oracle10g,但是持久层依然是hibernate。 问题来了:使用mysql数据库的时候我的每个domain的x...

2018是狗年
2010/12/20
511
2
主键映射以及特殊类型映射(三)

前面没有过多的描述@Id标注,现在拿出来单独谈谈! 1、主键标识(@Id)属性定义如下: @Target({METHOD, FIELD}) @Retention(RUNTIME)public @interface Id {} 2、标注@Id后,还要涉及@Gene...

半夏alvin
2012/11/25
0
0
Hibernate(四)Id的详解

Id生成策略: Hibernate内置的主键生成策略 一、assigned 主键由外部程序负责生成,在 save() 之前必须指定一个。Hibernate不负责维护主键生成。与Hibernate和底层数据库都无关,可以跨数据库...

废柴
2018/06/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

基础工具类

package com.atguigu.util;import java.sql.Connection;import java.sql.SQLException;import java.util.Properties;import javax.sql.DataSource;import com.alibaba.druid......

architect刘源源
今天
43
0
P30 Pro劲敌!DxO官宣新机:排行榜又要变

5月26日晚间,DxOMark官方推特预告,将在5月27日公布一款新机型的DxOMark评分,猜猜是哪款? 网友猜想的机型有:红米K20、谷歌Pixel 3a、索尼Xperia 1、诺基亚9 PureView等。 DxOMark即将公布...

linux-tao
昨天
15
0
Ubuntu18.04.2窗口过小不能自适应(二次转载)

解决Ubuntu在虚拟机窗口不能自适应 2018年09月06日 16:20:08 起不了名儿 阅读数 855 此博文转载:https://blog.csdn.net/nuddlle/article/details/77994080(原地址) 试了很多办法这个好用 ...

tahiti_aa
昨天
2
0
死磕 java同步系列之CountDownLatch源码解析

问题 (1)CountDownLatch是什么? (2)CountDownLatch具有哪些特性? (3)CountDownLatch通常运用在什么场景中? (4)CountDownLatch的初始次数是否可以调整? 简介 CountDownLatch,可以...

彤哥读源码
昨天
6
0
Nginx提供下载apk服务

有时候我们可能需要提供文件或者其他apk下载链接,通过 nginx 配置可以很简单地实现。 server {    listen 80;    server_name download.xxx.com;    root app;    locati...

Jack088
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部