![](/img/trans.png)
[英]java JDBC ArrayIndexOutOfBoundsException when delete, update
[英]jdbc DELETE update not working in Java code.
我正在為我的網站工作人員開發一個小型Java JFrame桌面應用程序,以便能夠一鍵刪除所有報告的帖子。
到目前為止,GUI是正確的,有2個按鈕-一個getReports按鈕(用於提供帖子數量)和一個deleteReports按鈕。
getReports函數正常運行。 但是,無論出於何種原因,DELETE查詢都不起作用。 有趣的是,當我在數據庫上手動使用查詢時,它刪除了有問題的行,因此我認為查詢沒有問題。
依次是getReports和deleteReports方法:
public static int getReports() throws InstantiationException, IllegalAccessException {
Connection conn = null;
try {
conn = DriverManager.getConnection(url, username, password);
Statement stmt = conn.createStatement();
String sql = "SELECT count(*) as amount FROM `tryreports`";
ResultSet rs = stmt.executeQuery(sql);
rs.first();
int quantity = rs.getInt("amount");
conn.close();
return quantity;
}
catch (SQLException ex) {
// handle any errors
System.out.println("SQLException: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("VendorError: " + ex.getErrorCode());
return 0;
}
}
public static void deleteReports() throws InstantiationException, IllegalAccessException {
Connection conn = null;
try {
conn = DriverManager.getConnection(url, username, password);
//System.out.println("Connected database successfully...");
Statement stmt = conn.createStatement();
String sql = "DELETE FROM `tryreports` WHERE posts IS NOT NULL";
stmt.executeUpdate(sql);
}
catch (SQLException ex) {
// handle any errors
System.out.println("SQLException: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("VendorError: " + ex.getErrorCode());
//return 0;
}
}
想法? 任何幫助,將不勝感激。
就我而言,這是一個簡單而難以想象的錯誤。
該應用程序有2個按鈕:getReports和deleteReports。 我忘記了在刪除按鈕的偵聽器方法中調用deleteReports()方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.