当前位置: 移动技术网 > IT编程>开发语言>Java > Mybatis 插入一条或批量插入 返回带有自增长主键记录的实例

Mybatis 插入一条或批量插入 返回带有自增长主键记录的实例

2019年07月19日  | 移动技术网IT编程  | 我要评论

三国群英传ol单机版,3344小游戏大全,男星露蛋

首先讲一下, 插入一条记录返回主键的 mybatis 版本要求低点,而批量插入返回带主键的 需要升级到3.3.1版本,3.3.0之前的都不行。

<dependency>
 <groupid>org.mybatis</groupid>
 <artifactid>mybatis-spring</artifactid>
 <version>3.3.1</version>
</dependency>

1.mysql

<insert id="insertbybatch" usegeneratedkeys="true" keyproperty="id" parametertype="java.util.list">
 insert into test (sblsh, xh, jsjg,
  is_success, is_display, gmt_create,
  gmt_modify, create_user)
 values
  <foreach collection="list" item="item" index="index" separator=",">
   (
   #{item.sblsh,jdbctype=bigint},
   #{item.xh,jdbctype=char},
   #{item.jsjg,jdbctype=bigint},
   #{item.issuccess,jdbctype=tinyint},
   #{item.isdisplay,jdbctype=tinyint},
   sysdate(),
   sysdate(),
   #{item.createuser,jdbctype=varchar})
  </foreach>
 </insert>

单条和多条 使用都是一样的, 加入usegeneratedkeys="true" keyproperty="主键字段"

2.oracle

<insert id="insertbatch"> 
 <selectkey keyproperty="id" resulttype="long" order="before"> 
  select test.nextval as id from dual 
 </selectkey> 
 insert into test 
 (id,value,gmt_create,gmt_modified) 
 select test.nextval, a.* from ( 
 <foreach collection="list" item="item" index="index" 
  separator="union all"> 
  select 
  #{item.value,jdbctype=varchar}, 
  #{item.gmtcreate,jdbctype=date}, 
  #{item.gmtmodified,jdbctype=date} 
  from 
  dual 
 </foreach> 
 ) a 
 </insert>

以上这篇mybatis 插入一条或批量插入 返回带有自增长主键记录的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持移动技术网。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网