猜测是因为 插入的顺序导致,
<!-- createBatch 计划详情-->
<insert id="creatBatch" parameterType="java.util.List">
INSERT INTO DUTY_SHCEDULE_DETAIL (ID,DUTY_TURN_PLAN_ID,WORK_DATE,GROUP_ID,DUTY_TURN_ID)
(
<foreach collection="list" item="item" index="index" separator="union all">
SELECT
#{item.id,jdbcType=VARCHAR},
#{item.dutyTurnPlanId,jdbcType=VARCHAR},
#{item.workDate,jdbcType=TIMESTAMP},
#{item.groupId,jdbcType=VARCHAR},
#{item.dutyTurnId,jdbcType=VARCHAR}
FROM dual
</foreach>
)
</insert>
解决方法是:
在xml的语句中指定values(顺序),标黄部分的顺序保持一致!
梅花香自苦寒来