Mybatis insert后调用insert对象主键get方法可以获得由序列生成的id条件
对于不允许自增的数据库如oracle、gp,insert的xml insert里必须有keyProperty属性,且要使用selectKey获得序列值,具体如下
<insert id=" " keyProperty="id"> <selectKey resultType="int" order="BEFORE" keyProperty="id"> 序列生成Id </selectKey>
sql语句 </insert>
对于允许自增的序列,insert里必须有useGeneratedKeys="true"和keyProperty属性,具体格式如下
<insert id=" " parameterType=" " useGeneratedKeys="true" keyProperty="id"> Sql语句 </insert>
useGeneratedKeys |
(仅对insert有用)这会告诉MyBatis使用JDBC的getGeneratedKeys方法来取出数据 比如:像MySQL和SQL Server 这样的数据库管理系统的自动递增字段)内部生成的主键。 默认值:false。 |
keyProperty |
(仅对insert有用)标记一个属性, MyBatis会通过getGeneratedKeys或者通过 insert 语句的selectKey子元素设置它的值。默认:不设置。 |