Mybatis批量更新Oracle数据库

用foreach做批量更新的时候总是报错:

    
		
			UPDATE T_JRAQ_PGJBXXSZ set
			
			    N_SFYX=#{item.n_sfyx,jdbcType=DECIMAL}
			
			WHERE
			N_PGJBXXBID=#{item.n_pgjbxxbid,jdbcType=DECIMAL}
		
	

 以下这种写法有效(经过测试):

        
            update T_JRAQ_PGJBXXSZ
            
             
                 
                         
                          when N_PGJBXXBID=#{i.n_pgjbxxbid} then #{i.n_sfyx}
                         
                 
              
             
            where
            
              N_PGJBXXBID=#{i.n_pgjbxxbid}
          
        

你可能感兴趣的:(Mybatis批量更新Oracle数据库)