欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mybatis foreach批量插入数据:Oracle与MySQL的区别

程序员文章站 2022-03-09 21:25:14
主要不同点在于foreach标签内separator属性的设置问题: separator设置为","分割时,最终拼接的代码形式为:insert into table_name (...
主要不同点在于foreach标签内separator属性的设置问题:

separator设置为","分割时,最终拼接的代码形式为:insert into table_name (a,b,c) values (v1,v2,v3) ,(v4,v5,v6) ,...

separator设置为"union all"分割时,最终拼接的代码形式为:insert into table_name (a,b,c) values (v1,v2,v3) union all (v4,v5,v6) union all...

详情请见示例代码:

oracle:

insert into table_name (name, adress, age)

values

(select #{item.name},

#{item.adress},

#{item.age}

from dual )

mysql:

insert into table_name (name, adress, age)

values

( #{item.name}, #{item.adress}, #{item.age} )