oracle如何获取自增id,oracle实现自增id

--oracle实现自增id

--创建一张T_StudentInfo表

create table T_StudentInfo

(

"id" integer not null primary key,

xsName nvarchar2(120) not null,

xsAge integer not null,

Mobile varchar(12),

Email varchar(50),

Address nvarchar2(300)

);

--创建一个序列,序列名字叫SEQ_StudentInfo_Identity

--创建一个序列(序列名的规则一般建议是以SEQ开头。然后下划线。后面跟你的表名,表名前的T_能够去掉,然后以_Identity结尾。用来表示我这个序列是用在Id自增字段的序列)

create sequence SEQ_StudentInfo_Identity

increment by 1 --每次添加几个。我这里是每次添加1

start with 1 --从1開始计数

nomaxvalue --不设置最大值

nocycle --一直累加,不循环

nocache; --不建缓冲区

--你仅仅有了表和序列还不够。还须要一个触发器来运行它

--创建一个触发器 触发器的名字叫Trg_Studentinfo_Identity

--我自己建议触发器以Trg开头_后面跟表名。在后面依据情况自己看着办

create trigger Trg_Studentinfo_Identity before

insert on T_StudentInfo for each row when(new.id is null)

begin

select id_sequence.nextval into:new.id from dual;

end;

Oracle创建自增ID

先创建序列sequence create sequence S_User minvalue 1 nomaxvalue  -- 或 maxvalue 999 start with 1 increment ...

ThinkPHP 3.2.3+ORACLE插入数据BUG修复及支持获取自增Id的上次记录

TP+ORACLE插入数据BUG修复以及获取自增Id支持getLastInsID方法 这些天在做Api接口时候,发现用TP操作Oracle数据库,发现查询修改删除都能执行, 但一旦执行插入操作老是报错 ...

oracle中实现自增id

在一些数据库(例如mysql)中,实现自增id只要在建表的时候指定一下即可, 但是在oracle中要借助sequence来实现自增id, 要用上自增id,有几种方式: 1.直接在insert语句中使用 ...

oracle如何创建表的自增ID(通过触发器)

Oracle中创建表的自增ID(通过触发器),序列的自增ID和触发器的自增ID的区别 1.新增数据(序列) --创建示例表 -- create table Student( stuId ) not n ...

oracle中如何创建表的自增ID(通过序列)

1.什么是序列呢? 序列是一数据库对象,利用它可生成唯一的整数.一般使用序列自动地生成主码值.一个序列的值是由特别的Oracle程序自动生成,因而序列避免了在运用层实现序列而引起的性能瓶颈. Orac ...

oracel: 通过特殊表序列来实现oracle自增id (mybatis实现自增id)

本项目结合mybaits来使用. 加入有一个用户表:sys_user, 自增id为user_id. 怎么来实现id的自增呢? 通过sql语句select * from user_sequences,检 ...

在oracle数据库里创建自增ID字段的步骤

CREATE TABLE ADVICE ( ID INT NOT NULL, ACTIVE NOT NULL, TYPE INT NOT NULL, MSG ) NOT NULL, ADVICE ) ...

oracle 主键自增并获取自增id

1 创建表 /*第一步:创建表格*/ create table t_user( id int primary key, --主键,自增长 username varchar(20), password ...

mysql插入数据后返回自增ID的方法

mysql和oracle插入的时候有一个很大的区别是,oracle支持序列做id,mysql本身有一个列可以做自增长字段,mysql在插入一条数据后,如何能获得到这个自增id的值呢? 方法一是使用la ...

随机推荐

三分钟集成elmah xml 格式日志到mvc站点

1.通过nuget安装Elmah ELMAH on XML Log 会自动在web.config 文件中添加配置内容,默认不允许远程访问,日志访问路径是 Elmah.axd,不记录500错误 2.修改 ...

vue.js慢速入门(1)

0.MVVM 什么是MVVM?就是Model-View-ViewModel. ViewModel是Vue.js的核心,它是一个Vue实例. 不太懂也没关系,慢慢就懂了. 1.基础示例 代码: < ...

ASP&period;NET MVC 路由调试工具Router Debugger

直接上图 安装好手动启用或关闭 我开始调试我之前程序中由于路由遇到的问题 当发出 http://localhost:2362/109.html 这样请求, 我的意图是想Article的Details被 ...

WPF CAL 计算器

界面最终结果: 下载地址:https://skydrive.live.com/redir?resid=25C3908AA2038BDB!148&authkey=!ADR71XdB04LipYE

Count the Colors(线段树染色)

Count the Colors Time Limit:2000MS    Memory Limit:65536KB    64bit IO Format:%lld & %llu Submit ...

【转】使用Memcached提高&period;NET应用程序的性能

在应用程序运行的过程中总会有一些经常需要访问并且变化不频繁的数据,如果每次获取这些数据都需要从数据库或者外部文件系统中去读取,性能肯定会受到影响,所以通常的做法就是将这部分数据缓存起来,只要数据没有发 ...

(三十八)从私人通讯录引出的细节II -数据逆传 -tableView点击 -自定义分割线

项目中的警告是不会影响app发布的,例如引入第三方类库很容易引入警告. 细节1:跳转的数据传递. prepareForSegue: sender: 方法是在执行segue后,跳转之前调用这个方法,一般 ...

记号一下selenium&plus;Firefox自动下载的参数

参考: https://blog.csdn.net/wxstar8/article/details/80782556 https://blog.csdn.net/xiaoguanyusb/articl ...

js保留两位小数方法总结

js保留两位小数方法总结 最近在做结算系统,经常需要用到金额保留两位小数,刚开始我一直用的是Angular中的过滤器number |2,但是,这无法满足我的需求.问题是,当用户离开文本框时,我需要将用 ...

How To Join XLA&lowbar;AE&lowbar;HEADERS and RCV&lowbar;TRANSACTIONS&lpar;子分类账到事务处理追溯&rpar;

Applies to:   Oracle Inventory Management - Version: 12.0.6 and later   [Release: 12 ...

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值