mybatis配置oracle的主键自增长
引用自:https://hacpai.com/article/1405392025960
mysql、sqlserver等数据库本身带有主键自增长像auto_increment的功能可以直接使用
useGeneratedKeys=”true”来实现,比如下面的配置
<insert id=”add” useGeneratedKeys=”true” keyProperty=”id” parameterType=”Auth”>
insert into s_user_auth (id,user_id, user_name) values(#{id},#{userid},#{username})
</insert>
而oracle则不行,oracle主键自增长是通过sequence实现的,所以这种方式就不可以了,需要使用:
1.先通过sequence查出来id,再insert
<insert id=”add” useGeneratedKeys=”false” keyProperty=”id” parameterType=”Auth”>
<selectKey resultType=”String” keyProperty=”id” order=”BEFORE”>
select yoursequence.nextval as id from dual
</selectKey>
insert into s_user_auth (id,user_id, user_name) values(#{id},#{userid},#{username})
</insert>
2.直接insertsequence.nextval,如下
<insert id=”add” useGeneratedKeys=”false” keyProperty=”id” parameterType=”Auth”>
insert into s_user_auth (id,user_id, user_name) values(yoursequence.nextval,#{userid},#{username})
</insert>
mybatis配置oracle的主键自增长的更多相关文章
- MyBatis自动获取主键,MyBatis使用Oracle返回主键,Oracle获取主键
MyBatis自动获取主键,MyBatis使用Oracle返回主键,Oracle获取主键 >>>>>>>>>>>>>> ...
- Oracle 设置主键自增长__Oracle
转自:https://yq.aliyun.com/ziliao/258074 如果想在Oracle数据库里实现数据表主键自增,我们似乎没有办法像MySql般直接定义列的属性来实现.不过对于这个数据库的 ...
- Mybatis 操作数据库的主键自增长
本篇文章将研究mybatis 实现oracle主键自增的机制 首先我们看对于同一张student表,对于mysql,sql server,oracle中它们都是怎样创建主键的 在mysql中 crea ...
- Oracle实现主键自增长
-- 主键设置:xx_id number(24) primary key 1 create sequence XX_seq --序列名称 increment by 1 -- 每次加几个 start - ...
- MyBatis+Oracle实现主键自增长的几种常用方式
一.使用selectKey标签 <insert id="addLoginLog" parameterType="map" > <selectK ...
- mybatis insert oracle 返回主键
mybtis返回oracle主键 只需要加一点代码(红色处的代码)就可以了 <!-- 添加记录到临时表 --> <insert id="insertPlaneStateme ...
- Oracle 设置主键自增长
如果想在Oracle数据库里实现数据表主键自增,我们似乎没有办法像MySql般直接定义列的属性来实现.不过对于这个数据库的常用功能,我们还是有办法实现的.这里将展示使用触发器来实现主键自增. 1.准备 ...
- Oracle设置主键自增长
第一步:为表设置主键 第二步:新建序列 CREATE SEQUENCE SQ.SEQ_INCREASE START WITH 12 MAXVALUE 999 MINVALUE 0 INCREME ...
- myBatis插入oracle获取主键
<insert id="insert" parameterType="com.inspur.biz.entry.SpLackApply"> < ...
随机推荐
- 一个iOS图片选择器的DEMO(实现图片添加,宫格排列,图片长按删除,以及图片替换等功能)
在开发中,经常用到选择多张图片进行上传或作其他处理等等,以下DEMO满足了此功能中的大部分功能,可直接使用到项目中. 主要功能如下: 1,图片九宫格排列(可自动设置) 2,图片长按抖动(仿苹果软件删除 ...
- HttpHandler动态生成图片
1.向服务器请求返回图片,浏览器是不知道服务上有这个图片的存在的,只是发出请求,接收请求,显示图片 string path = context.Server.MapPath("~/1.jpg ...
- Linux配置SSH公钥认证与Jenkins远程登录进行自动发布
公钥认证,是使用一对加密字符串,一个称为公钥(public key), 任何人都可以看到其内容,用于加密:另一个称为密钥(private key),只有拥有者才能看到,用于解密. 在使用jenkins ...
- linux中的解压,压缩命令
tar命令 解包:tar zxvf FileName.tar 打包:tar czvf FileName.tar DirName gz命令 解压1:gunzip FileName.gz 解压2:gzip ...
- css局部概念的理解:
1.DIV-Padding理解:一直以来对div中的padding属性,一直不理解,使用最多的也就是margin,padding是div的内空间的相对距离,margin是div的外部相对位置,如果用一 ...
- h5 canvas 小球移动
h5 canvas 小球移动 <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...
- Android SDK、ADT认识
Android SDK: (software development kit)软件开发工具包. 包含一些实用的Android sdk api,供开发者使用,就像开发java程序需要的使用JDK一样. ...
- loj 1034(最小点基)
题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=25911 思路:强连通缩点,在新图中找入度为0的点的个数即可. #i ...
- 【HTML5】Canvas画布
什么是 Canvas? HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像. 画布是一个矩形区域,您可以控制其每一像素. canvas 拥有多种绘制路径.矩形.圆形.字符以 ...
- js:数据结构笔记12--排序算法(2)
高级排序算法:(处理大数据:百万以上) 希尔排序:是插入排序的优化版: 首先设置间隔数组,然后按照每个间隔,分别进行排序: 如第一个间隔为5,首先a[5]与a[0]进行插入排序;然后a[6]和a[0] ...