當我執行在Java statement.executeBatch()方法,其返回值爲int數組作爲2聲明則ExecuteBatch方法返回的值陣列2
JDBC的規格具有以下說關於該報稅表批量更新的代碼:
■0或者更大
■Statement.SUCCESS_NO_INFO
■-2
但是,那時我每次獲取爲2. 記錄從數據庫中成功刪除,並從滿足查詢的兩個表中刪除25條記錄。但是,在系統輸出它顯示了受影響的記錄值2
Connection conn = null;
Statement stmt = null;
try {
Class.forName(JDBC_DRIVER);
conn = DriverManager.getConnection(CONNECTION_URL, USERNAME, PASSWORD);
stmt = conn.createStatement();
System.out.println("trying to execute query");
stmt.addBatch("DELETE FROM TABLE1 WHERE CRTE_TSTP < TRUNC(SYSDATE) - 14");
stmt.addBatch("DELETE FROM TABLE2 WHERE RECV_TSTP < TRUNC(SYSDATE) - 14");
int affectedRecords[] = stmt.executeBatch();
conn.commit();
System.out.println("number of rows deleted " + affectedRecords.length);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
allu:Thanks.It有效 – 2015-04-02 10:34:16