ibatis中批量插入、更新、删除数据的写法

09211.jpg

微信公众号: 51码农网
专业编程问答社区
www.51manong.com

数据库是oracle
1.批量插入数据:java

<insert id="insertData" parameterClass="java.util.List">
  insert all
    <iterate conjunction="">
      into  tableA(custom,flag) values
       (#dataList[].custom#,#dataList[].flag#)
     </iterate>
    select * from dual
</insert>

2.批量删除数据数据库

<delete id="insertData" parameterClass="java.util.List">
  delete from tableA where custom in
   <iterate conjunction="," open="(" close=")">
     #dataList[].custom#
   </iterate>
</delete>

一次传入list的数据不要超过1000,用的是in2.批量更新数据
3.批量更新数据编程

<update id="insertData" parameterClass="java.util.List">
  update  tableA set flag='1'  where custom in
   <iterate conjunction="," open="(" close=")">
     #dataList[].custom#
   </iterate>
</update>