数据库添加数据返回主键id

Posted h-dream

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库添加数据返回主键id相关的知识,希望对你有一定的参考价值。

mysql中插入一条数据后,返回该条数据的id ,假如之后代码需要这个id,内容如下:

<insert id="saveUser" useGeneratedKeys="true" keyProperty="userId" parameterType="User">

    insert into user(name,password,age) values(#{name},#{password},#{age})

</insert> 
测试代码如下:
User user = new User();

user.setName("张三");
user.setPassword("123456");

System.out.println("插入数据前主键为:"+user.getUserId());   //输出结果null
//调用方法
userDao.saveUser(user);
System.out.println("插入数据后主键为:"+user.getUserId());    //输出结果是插入数据新增的id: 21
注意:useGeneratedKeys默认值是:false。 
含义:设置是否使用JDBC的getGenereatedKeys方法获取主键并赋值到keyProperty设置的领域模型属性中。

如果使用的是mybatis-plus,则使用自带插入方法插入,然后根据对应的领域模型获取主键id即可。

以上是关于数据库添加数据返回主键id的主要内容,如果未能解决你的问题,请参考以下文章

mybatis+mysql insert添加数据后返回数据主键id

Mybatis在insert时返回主键id

Laravel 5 插入数据后返回主键ID

mybatis添加记录时返回主键id

插入数据返回插入的主键Id

mapper文件中“添加一条新数据并返回此数据的ID(主键)”的方法