JDBC批理更新示例

fdwm 9年前發布 | 885 次閱讀 Java JDBC

ConnectionObject.java

public class ConnectionObject {
    static String DB_DRIVER = "com.mysql.jdbc.Driver";
    static String DB_CONNECTION = "jdbc:mysql://localhost:3306/test";
    static String DB_USER = "userName";
    static String DB_PASSWORD = "password";

public static Connection getConnection() {
    Connection connection = null;
    Class.forName(DB_DRIVER);
    connection = DriverManager.getConnection(DB_CONNECTION, DB_USER,
            DB_PASSWORD);
    return connection;
}

} </pre>

public void batchUpdateUsingPreparedStatement() throws SQLException {

int[] result = null;
String SQL = "update person set firstName=?,lastName=? where id=?"; 
// '?' is the placeholder for the parameter
try {
    PreparedStatement stmt = connection.prepareStatement(SQL);
    connection.setAutoCommit(false);
    stmt.setString(1, "Abc"); // Value for the first parameter, namely 'firstName'
    stmt.setString(2, "Def"); // Value for the second parameter, namely 'lastName'
    stmt.setInt(3, 1); // Value for the third parameter, namely 'id'
    stmt.addBatch(); // Add to Batch

    stmt.setString(1, "Xyz");
    stmt.setString(2, "Uvw");
    stmt.setInt(3, 2);
    stmt.addBatch(); // Add second query to the Batch
    result = stmt.executeBatch(); // execute the Batch and commit
    connection.commit();
} catch (SQLException e) {
    connection.rollback();
    e.printStackTrace();
} finally {
    if (connection != null)
        connection.close();
}
System.out.println("Number of rows affected: " + result.length);

} </pre>

 本文由用戶 fdwm 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!