Mybatis-一括操作(追加、削除、変更)操作

1861 ワード

OracleとMySQLの構文にはいくつかの違いがあります.
1、一括更新

  
    
      update tableName
      set yqb = #{item.yqb}
      where id = ${item.id}
    
  


  
    
      update tableName
      set yqb = #{item.yqb}
      where id = ${item.id}
    
  

2、一括削除
  • 注:oracleデータベースinクエリーの数は最大1000個をサポートし、エラーを報告します.使用には注意が必要
  •   
    
        delete from tableName 
        where id in (
          
            #{item,jdbcType = VARCHAR}
          
        )
      

    3、一括新規
  • 注:foreachラベルの下部で使用される再帰的な方法で実現され、挿入数が多すぎるとスタックオーバーフローエラーを引き起こす可能性があります.
  • を慎重に使用する必要があります
       
    
        insert into tableName(id,name,age)
        
          select #{item.id,jdbcType = VARCHAR},#{item.name,jdbcType = VARCHAR},#{item.age,jdbcType = VARCHAR}
          from dual
        
    
    
       
    
        insert into tableName(id,name,age)
        
          select #{item.id,jdbcType = VARCHAR},#{item.name,jdbcType = VARCHAR},#{item.age,jdbcType = VARCHAR}
          from dual