1. 程式人生 > >Mybatis插入獲取主鍵的兩種方式

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>