Mybatis插入获取主键的两种方式

方法一:

用于主键自增的数据库(mysql),这种方式oracle无法使用(因为没有主键自增)

<!--新增一个新的用户-->
<insert id="insertUser" useGeneratedKeys="true" keyProperty="id">
    insert into c_user (name,age) values (#{name},#{age})
</insert>

如果是用注解方式:要使用@Options注解声明

    /**
     * 新增用户信息
     */
    @Insert("insert into c_user (name,age) values (#{name},#{age})")
    @Options(useGeneratedKeys = true, keyColumn = "id")
    Integer insertUser(User user);

方法二:

使用selectKey标签获取主键,标签中间的是获取主键函数,不同数据库的函数不一样

<!--新增一个新的用户-->
<insert id="insertUser">
    <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">
        select LAST_INSERT_ID()
    </selectKey>
    insert into c_user (name,age) values (#{name},#{age})
</insert>

猜你喜欢

转载自blog.csdn.net/chenzz2560/article/details/84791090
今日推荐