`
风吹过
  • 浏览: 4672 次
文章分类
社区版块
存档分类
最新评论

给oracle数据库增加一列做主键,增加一个sequence,数据库怎么获得主键。

阅读更多

 

1 删除一张表

  delete from T_DHK_SJ;

2 给表增加一类,并做主键

alter table T_DHK_SJ add (DHKBH number(20));
alter table T_DHK_SJ add constraint pk_dhk_dhkbh primary key(dhkbh);

3 增加一个sequence

create sequence SEQ_T_DHK_SJ
minvalue 1
maxvalue 999999999999999999999999999
start with 1
increment by 1
cache 2;

4 在数据库插入一条数据,例:

insert into t_dhk_sj(dhhm, yhxm, yhdz, sfzhm, gxsj, by1, by2, dhkbh)
 values('119','王五','北京','0000222',to_date('29-10-2014', 'dd-mm-yyyy'),null,null,seq_t_dhk_sj.nextval);

注意下一条数据的主键变为seq_t_dhk_sj.nextval。

 

 

 

分享到:
评论

相关推荐

    oracle数据库主键自增并且返回主键值

    一、创建序列 1.1、直接在PLSQL中设置 1.2、命令创建 create sequence seq_users ##创建序列seq_users increment by 1 ## 步长,每次加1 start with 1 ##从1开始 minvalue 1 ##最小值 maxvalue 9999999 ##最大值 ...

    oracle中的sequence实现主键增长

    教你如何使用oracle中的sequence,实现主键自动增长

    oracle 主键自增 sequence

    以上代码完成了一个序列(sequence)的建立过程,名称为emp_sequence,范围是从1开始到无限大(无限大的程度是由你机器决定的),nocycle 是决定不循环,如果你设置了最大值那么你可以用cycle 会使seq到最大之后循环....

    Oracle数据库中创建自增主键的实例教程

    在设计数据库表的时候发现Oracle没有自增主键的设置,Google了解到Oracle本身并不支持自增主键,需要通过序列(Sequence)和触发器(Trigger)实现。 创建表Student Create Table Student( id number(12) primary ...

    Oracle数据库、SQL

    一、 数据库介绍 1 1.1表是数据库中存储数据的基本单位 1 1.2数据库标准语言 1 1.3数据库(DB) 1 1.4数据库种类 1 1.5数据库中如何定义表 1 1.6 create database dbname的含义 1 1.7安装DBMS 1 1.8宏观上是数据-->...

    浅谈MyBatis-Plus学习之Oracle的主键Sequence设置的方法

    主要介绍了浅谈MyBatis-Plus学习之Oracle的主键Sequence设置的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    oracle设置主键自动增长

     以上代码完成了一个序列(sequence)的建立过程,名称为emp_sequence,范围是从1开始到无限大(无限大的程度是由你机器决定的),nocycle 是决定不循环,假如你设置了最大值那么你可以用cycle 会使seq到最大之后循环....

    Oracle数据库表序列ID自增生成器

    Oracle数据库表序列ID自增生成器的功能是为数据库中的表添加序列和触发器,以便使数据表的主键ID能够随着记录的增加而自动增加。

    Oracle数据库设计规范建议.doc

    数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其 应用系统,有效存储数据,满足用户信息要求和处理要求。 2 适用范围 本规范的适用人员范围包括我司的所有应用开发人员以及在我司承接...

    Oracle数据库设计策略及规范.docx

    每个表中需含有如下几个基本字段:一个表的SEQ号,4个创建信息字段,5-8个备用字段,一个删除标记字段,最好还有一个行版本字段 字段名 类型 备注 业务SEQ号 整数型 作为表主键 OBLIGATE1 字符型 备用字段 OBLIGATE...

    Oracle与Mysql自动增长列(id)的区别

    这里所说的自动增长列,主要是指一个表中主键id的自动增长。 Oracle与Mysql不同,不能在CREATE建立表时设置自动增长列功能。 Oracle必须通过创建sequence序列来实现自动增加列的功能。 首先要建立序列(当然必须要先...

    bbs论坛项目运用SSH框架Oracle数据库编写的一个简单示列项目

    数据库创建代码: 1:用户表:(users) userid(主键),username(用户名),password(密码),sex(性别),head(头像),regdate(注册日期) 2:类别表:(types) tid(主键),type 3:技术表:(technic) teid(主键),tename(技术名),...

    Oracle、DB2、PostgreSQL之Sequence总结

    Sequence是数据库系统按照一定规则自动增加的数字序列。这个序列一般作为代理主键(因为不会重复),没有其他任何意义。Sequence是数据库系统的特性,有的数据库有Sequence,有的没有。比如Oracle、DB2、PostgreSQL...

    JPA学习笔记-EJB-03JPA主键生成策略总结

    总结一下关于JPA的主键生成策略,JPA是用@GeneratedValue标记来注释的。一般的我把主键生成分成两大类。第一个就是简单的单字段主键类型,一个就是复杂的复合主键...4. Sequence:像Oracle支持Sequence的生成主键策略

    主键生成器sequence

    在oracle中sequence就是所谓的序列号,每次取的时候它会自动增加,一般用在需要按序列号排序的地方。

    DB2数据库切换为oracle数据库经验教训总结(必看篇)

    由于DB2数据库使用的人太少,公司有没有专业的DBA,决定把数据库从DB2数据库切换为oracle数据库,本以为很简单,可当真的切换时,却发现,有很多东西出乎意料。 由于系统底层使用的是ORM映射工具,由于没有使用存储...

    oracle序列主键自增长

    当向表中插入数据时,主键值自动加一. 实现方法1: 建立一个最小为1,最大为nomaxvalue的一个序列号会自动循环的序列 create sequence 序列名 increment by 1 start with 1 nomaxvalue nocycle; .......

    java自动生成Oracle sequence管理类

    Oracle自增长主键自动生成类 public static int nextID String table { if table null return 1; table table toLowerCase ; String strKey table; if sequences containsKey strKey { ...

    Sequence简单介绍.pdf

    《Sequence简单介绍.pdf》 详细介绍了oracle和SQLSever关于主键自增的解决方法,希望对于数据库迁移遇到类似麻烦的朋友有点用处。里面详细介绍了SQLSever数据库向oracle数据库迁移的细节。

    oracle迁移mysql自增序列问题

    今天从oracle迁移数据到mysql碰到个需求:原先的主键字段需要改成mysql中的自增字段,而且原先数据的值不能变,以后新插入的值从原先数据最大的值开始自增。 解决办法: 构建环境: mysql> CREATE TABLE test -> ( ...

Global site tag (gtag.js) - Google Analytics