Oracle批量操作

racle批量插入

Xml代码   收藏代码
  1. <insert id="insertBatch" parameterType="java.util.List">  
  2.      insert into table_name(id, name,updateTime)  
  3.       <foreach collection="list" item="item" index="index" separator="union all" >   
  4.        (select    
  5.      #{item.id,jdbcType=VARCHAR}, #{item.name,jdbcType=VARCHAR}, #{item.updateTime,jdbcType=TIMESTAMP}  
  6.         from dual)  
  7.      </foreach>  
  8. </insert>  

 需要注意的是sql中没有values<foreach>标签中语句 (select ..... from dual)

 

 

oracle批量更新:

Xml代码   收藏代码
  1. <update id="updateBatch" parameterType="java.util.List">  
  2.      begin    
  3.          <foreach collection="list" item="item" index="index" separator=";" >  
  4.              update table_name  
  5.              <set>  
  6.                  name= #{item.name}  
  7.              </set>  
  8.              where id = #{item.id}  
  9.          </foreach>  
  10.          ;end;  
  11. </update>  

或者 

 

Xml代码   收藏代码
  1. <update id="updateBatch" parameterType="java.util.List">  
  2.    <foreach collection="list" item="item" index="index" open="begin" close="end;" separator=";">  
  3.       update table_name  
  4.       <set>  
  5.          name= #{item.name}  
  6.       </set>  
  7.          where id = #{item.id}  
  8.    </foreach>  
  9. </update>  

 

oracle批量删除

Xml代码   收藏代码
  1. <delete id="deleteBatch" parameterType="java.util.List">  
  2.    delete from table_name  
  3.    <where>  
  4.      <foreach collection="list" index="index" item="item" open="(" separator="or" close=")">       
  5.   id=#{item.id}  
  6.      </foreach>  
  7.    </where>  
  8. </delete>  

猜你喜欢

转载自zhengyunfei.iteye.com/blog/2419888
今日推荐