Mybatis insert into tab1 select column from tab2 命令未正常结束
因为我们是使用的oracle数据库,oracle是不支持自增的主键的, mybatis mapper 配置如下
1 | <insert id="insert" parameterType="com.xx" > |
程序运行起来mybatis报了一个异常sqlException 说命令未正确结束!查询了mybatis文档说明
useGeneratedKeys 允许 JDBC 支持自动生成主键,需要驱动兼容。 如果设置为 true
则这个设置强制使用自动生成主键,尽管一些驱动不能兼容但仍可正常工作(比如 Derby)。 true | false False
最后修改成了问题解决,但是有一点疑惑为啥默认这个就是false,为啥还要指定为false才可以呢?1
2
3
4<insert id="insert" parameterType="com.xx" useGeneratedKeys="false">
insert into tab1 (ID, CREATEDATE, STATUS)
(select ID, CREATEDATE, STATUS from tab2)
</insert>