Mybatis:Oracle批量插入,foreach方式正确姿势

网上常见的介绍:

<insert id="batchInsert" parameterType="java.util.List">
	  INSERT  INTO TEST_TABLE(
		CODE,
		REMARK
		)(
		<foreach collection="list" item="dataList" index="index" separator="union all" >
			SELECT
			#{dataList.code,jdbcType=VARCHAR},
			#{dataList.remark,jdbcType=VARCHAR}
			FROM dual
		</foreach>
		)
</insert>

博主们都写的很详细,但在实操中,还是报错了,原因是useGeneratedKeys=true引起的(无知引起的)。

批量插入时,如果没有主键,一定要显式指定useGeneratedKeys为false,否则会报: SQL 命令未正确结束。

你可能感兴趣的:(工具箱,java,oracle,sql)