JDBC批量更新某个字段的值


package com.cme.core;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;

import com.cme.utils.JdbcUtils;

public class Import {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Connection conn = null;
        Statement ps = null;
        Statement  ps2 = null;
        String sql = "select id from pf_enterprise_info2";
        try {
            // 2.建立连接
            conn = JdbcUtils.getConnection();
            conn.setAutoCommit(false);
            ps = conn.createStatement();
            ps2 = conn.createStatement();
            ResultSet rs = ps.executeQuery(sql);
            int i = 0;
            while (rs.next()) { // 指针向下移动
                String id = rs.getString(1);
                i++;
                String sql2 ="update pf_enterprise_info2 set enterprise_import_code=CONCAT(industry_code,'-',enterprise_nationality_code,'-',LPAD(LEFT(IFNULL(enterprise_import_code,0),8)+"+i+",8,'0')) where id='"+id+"';";
                ps2.addBatch(sql2);
            }
            rs.close();
            ps.close();
            ps2.executeBatch(); 
            ps2.clearBatch();
            conn.commit();
        } catch (Exception e) {
            JdbcUtils.rollback(conn);
            e.printStackTrace();
        } finally {
            JdbcUtils.free(null, ps, conn);
        }
    }

}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM