Oracle和MySQL插入时获取主键

时间:2021-11-09 23:52:08

这里只写selectKey方法的

一,Oracle数据库中的写法

order="BEFORE"因为oracle中需要先从序列获取值,然后将值作为主键插入到数据库中

<selectKey keyColumn="id" resultType="long" keyProperty="id" order="BEFORE">

SELECT SEQ_ID.nextval from dual

</selectKey>

二,MySQL数据库中的写法

order="AFTER"因为当前记录的主键值在insert语句执行后才能获取到

<selectKey keyColumn="id" resultType="long" keyProperty="id" order="AFTER">

SELECT LAST_INSERT_ID()

</selectKey>