在Oracle中,通过一个INSERT ALL语句批量插入数据

Oracle:
INSERT ALL
INTO A(field_1,field_2) VALUES (value_1,value_2)
INTO A(field_1,field_2) VALUES (value_3,value_4)
INTO A(field_1,field_2) VALUES (value_5,value_6)
SELECT 1 FROM DUAL;

在Mybatis中使用
<insert id="insertData" parameterType="java.util.List"
useGeneratedKeys="false">
INSERT ALL
<foreach item="item" index="index" collection="list">
INTO T_GZL_BZ
(
ID,
JGH,
JGMC,
DW,
JGLX,
BZLB,
JGZWLB,
EDGZL,
ZGGZL,
BZ,
CJRBH,
CJRXM,
CJSJ,
SFSZ
) VALUES
(
#{item.id,jdbcType=VARCHAR},
#{item.teacherId,jdbcType=VARCHAR},
#{item.teacherName,jdbcType=VARCHAR},
#{item.departmentId,jdbcType=VARCHAR},
#{item.teacherType,jdbcType=VARCHAR},
#{item.compilationCategory,jdbcType=VARCHAR},
#{item.jobCategory,jdbcType=VARCHAR},
#{item.ratedWorkload,jdbcType=NUMERIC},
#{item.maxWorkload,jdbcType=NUMERIC},
#{item.remark,jdbcType=VARCHAR},
#{item.creator,jdbcType=VARCHAR},
#{item.creatorName,jdbcType=VARCHAR},
#{item.createTime,jdbcType=DATE},
#{item.settings,jdbcType=VARCHAR}
)
</foreach>
SELECT 1 FROM DUAL
</insert>

mapper:
/**
* @param createList
* @return
*/
int insertData(@Param("list") List<WorkloadStandardDto> createList);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容