mybatis获取insert插入之后的id】的更多相关文章

一.为什么要获取insert的id 写了测试类测试插入,插入之后用select查询出来进行Assert 插入成功后,不管Select对比的结果成功还是失败,都希望删除掉测试插入的结果 二.运行环境 mysql自增主键 mapper中的insert下是,这是通过mybatis_generator自动生成的,最新版本1.3.6. <selectKey keyProperty="id" order="BEFORE" resultType="java.lan…
在myBatis中获取刚刚插入的数据的主键id是比较容易的 , 一般来说下面的一句话就可以搞定了 , 网上也有很多相关资料去查. @Options(useGeneratedKeys = true, keyProperty = "money_record_id") 但是相比较 , 批量插入数据时获取相数据的主键Id就会变得非常难了 , 上面的办法是没用的 . 可以按照如下办法去解决 : 1.新建一个sql如下 , 在一个事务中 , 可以通过如下sql获取到批量插入的数据的第一条数据的主键…
原文地址:https://blog.csdn.net/hehuihh/article/details/82800739 我用的是第一种写法,直接把代码copy到insert标签里(id要是自增id) 写法如下: 第一种写法: 第二种写法: 第一种写法详解: keyProperty属性表示要查询的主键的名字,就是主键字段对应实体类的属性. order属性有两个值,即after,before:after表示在insert之后执行SELECT LAST_INSERT_ID(),一般用于主键自增时,得到…
二话不说: 1.先建立个表 CREATE TABLE [dbo].[UserInfo](    [ID] [int] IDENTITY(1,1) NOT NULL,    [UserName] [nchar](10) NULL,    [UserPass] [nchar](10) NULL,    [RegTime] [datetime] NULL,    [Email] [nchar](10) NULL,CONSTRAINT [PK_UserInfo] PRIMARY KEY CLUSTERE…
--插入数据,并返回刚刚插入的数据id INSERT INTO [soloreztest] ([name]) output inserted.id VALUES ('solorez') --执行结果: --id ------------- --5 (1 行受影响) 第二种方法:insert into table1 values(colvalue1,colvalue2)select ident_current('table1') 第三种方法:insert into table1 values(co…
单条数据时model->attributes['id']; 循环插入时使用 Yii::app()->db->getLastInsertID() 获取 循环插入时需要每次插入后重置 model->primarykey =0; 或 model->id = 0;model->setIsNewRecord(true); …
记录解决的过程,这里就不搬砖了. 1.获取insert后的主键id 原文链接:http://www.cnblogs.com/fsjohnhuang/p/4078659.html 2.insert后返回主键是1,如何拿到insert后返回的主键 原文链接:http://blog.csdn.net/prevention/article/details/32825081…
在使用MyBatis做持久层时,insert语句默认是不返回记录的主键值,而是返回插入的记录条数:如果业务层需要得到记录的主键时,可以通过Mapper.XML配置的方式来完成这个功能. 在 INSERT 标签 添加 useGeneratedKeys="true" keyProperty="id" 即可: <insert id="insertFeedback" useGeneratedKeys="true" keyProp…
一.写一个实体类 public class UserInfo { private long userId; private String userAccount; private String userPassword; private String userName; private int userStatus; private String userCreateDatetime; private String userRegisterIp; public String getUserNam…
在我们开发过程中,在插入数据到数据库时,很多时候都需要把其主键返回,这里就说一下mybatis是怎么获取的. 其中mysql和oracle是不同的做法,因为mysql本身就提供字段自增的属性,而oracle则需要使用序列. mysql <insert id="insert" parameterType="com.yitop.admin.domain.User" useGeneratedKeys="true" keyProperty=&quo…
$insert_id = $UserModel->attributes['id'];…
mybatis insert语句 <insert id="Add" parameterClass="UserInfo" resultClass="int"> INSERT INTO UserInfo(UserName,Password,NickName) VALUES (#UserName#,#Password#,#NickName#) </insert> 这样无法获取到插入记录的ID,如果想要获取的ID,需要用到sele…
1.在Mybatis Mapper文件中添加属性“useGeneratedKeys”和“keyProperty”,其中keyProperty是Java对象的属性名,而不是表格的字段名. <insert id="insert" parameterType="Spares" useGeneratedKeys="true" keyProperty="id"> insert into system(name) values…
1.在Mybatis Mapper文件中添加属性“useGeneratedKeys”和“keyProperty”,其中keyProperty是Java对象的属性名,而不是表格的字段名. <insert id="insert" parameterType="Spares" useGeneratedKeys="true" keyProperty="id"> insert into system(name) values…
转自:http://blog.csdn.net/tolcf/article/details/39035259 1.在Mybatis Mapper文件中添加属性“useGeneratedKeys”和“keyProperty”,其中keyProperty是Java对象的属性名,而不是表格的字段名. <insert id="insert" parameterType="Spares" useGeneratedKeys="true" keyProp…
1. 单元测试 在单元测试中,每个测试方法都需要执行相同的前置代码和后置代码,则可以自定义2个方法,分别在这2个方法中执行前置代码和后置代码,并为这2个方法添加@Before和@After注解,然后,在每个测试方法中,就不必再编写这些代码,最终,在执行测试方法之前,会自动调用添加了@Before注解的方法,在执行测试方法之后,会自动调用添加了@After注解的方法: private AbstractApplicationContext ac; private UserMapper userMap…
使用mybatis向数据库中插入一条记录,如何获取成功插入记录的自增长id呢? 需要向xml配置中加上一下两个配置: <insert id="add" useGeneratedKeys="true" keyProperty="id" parameterType="com.work.model.ScheduleInfoTable"> insert into scheduleInfo(title,content,tim…
现在的项目改用 Guns 了,也是一个很不错的框架,用起来也感觉很不错,上手也挺方便的.毕竟对于只是应用层面的知识,也基本上就是看看手册,熟悉熟悉就可以轻松上手了.如果是想要深入,或者刨根问底,那么就需要有一定的基本功了,比如需要完全熟练掌握 Java 的语法特性,熟悉设计模式……对于我而言,暂时还是达不到的,还是只能从应用的层面来入手,有问题搜索搜索资料,或者调试调试框架底层的部分代码等方式.路还很长,还要不断的努力. 实体类中没有填充 insert 后的 id 通常执行 insert 后会返…
Mybatis insert 返回自增主键 mysql 准备一张带有自增主键的表users 字段:id,name,phone sql <!--插入记录并获取刚插入记录的主键--> <insert id="xxx" keyProperty="id" useGeneratedKeys="true" parameterType="Users"> insert into users (name ,phone)…
记录一次傻逼的问题, 自己把自己蠢哭:Mybatis 在 insert 之后想获取自增的主键 id,但却总是返回1 错误说明: 返回的1是影响的行数,并不是自增的主键id: 想要获取自增主键id,需要通过xx.getId()方法获取,因为在mybatis中指定自增主键id封装到了对象的属性中,所以我们需要在对象中来获取 代码示例如下: <insert id="add" useGeneratedKeys="true" keyColumn="id&quo…
记录一次傻逼的问题, 自己把自己蠢哭:Mybatis 在 insert 之后想获取自增的主键 id,但却总是返回1 错误说明: 返回的1是影响的行数,并不是自增的主键id: 想要获取自增主键id,需要通过xx.getId()方法获取,因为在mybatis中指定自增主键id封装到了对象的属性中,所以我们需要在对象中来获取 代码示例如下: <insert id="add" useGeneratedKeys="true" keyColumn="id&quo…
著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:吃丸子的小鹿链接:http://www.zhihu.com/question/20810321/answer/16843223来源:知乎 对于支持自动生成主键的数据库(如SQL Server),可以采用以下方式 <insert id="xxx" parameterType="yyy" useGeneratedKeys="true" keyProperty="…
在Mybatis Mapper文件中添加属性“useGeneratedKeys”和“keyProperty”,其中keyProperty是Java对象的属性名! <insert id="addMessage" parameterType="Message" useGeneratedKeys="true" keyProperty="msgid"> <!-- useGeneratedKeys指定myBatis使用…
在Mybatis Mapper文件中添加属性“useGeneratedKeys”和“keyProperty”,其中keyProperty是Java对象的属性名,而不是表格的字段名. <insert id="insert" parameterType="com.jbt.pojo.SectorInfo" useGeneratedKeys="true" keyProperty="id"> Mybatis执行完插入语句后,…
需求:使用MyBatis往MySQL数据库中插入一条记录后,需要返回该条记录的自增主键值. 方法:在mapper中指定keyProperty属性,示例如下: <insert id="insertAndGetId" useGeneratedKeys="true" keyProperty="userId" parameterType="com.chenzhou.mybatis.User"> insert into us…
<insert id="insertCharge" parameterType="com.bb.bean.Rechargerecord"> <selectKey keyProperty="id" resultType="java.lang.Integer" order="AFTER"> select LAST_INSERT_ID() </selectKey> INSERT…
1.在Mybatis Mapper文件中添加属性“useGeneratedKeys”和“keyProperty”,其中keyProperty是Java对象的属性名,而不是表格的字段名. 2.Mybatis执行完插入语句后,自动将自增长值赋值给对象systemBean的属性id.因此,可通过systemBean对应的getter方法获取! 示列 <insert id="insert" parameterType="Merchant.model.BaoShopPic&quo…
这是最近在实现perfect-ssm中的一个功能时碰到的一个小问题,觉得需要记录一下,向MySQL数据库中插入一条记录后,需要获取此条记录的id值,以生成对应的key值存入到redis中,id为自增int主键. 修改 原代码为: <insert id="insertArticle" parameterType="Article"> insert into ssm_article(article_title,article_create_date,arti…
这是最近在实现perfect-ssm中的一个功能时碰到的一个小问题,觉得需要记录一下,向MySQL数据库中插入一条记录后,需要获取此条记录的id值,以生成对应的key值存入到redis中,id为自增int主键. 修改 原代码为: <insert id="insertArticle" parameterType="Article"> insert into ssm_article(article_title,article_create_date,arti…
一.前言    数据库操作怎能少了INSERT操作呢?下面记录MyBatis关于INSERT操作的笔记,以便日后查阅. 二.insert元素 属性详解   其属性如下: parameterType ,入参的全限定类名或类型别名 keyColumn ,设置数据表自动生成的主键名.对特定数据库(如PostgreSQL),若自动生成的主键不是第一个字段则必须设置 keyProperty ,默认值unset,用于设置getGeneratedKeys方法或selectKey子元素返回值将赋值到领域模型的哪…