我試圖創建一個if語句,但不工作,如果找到isbn書在jtable,顯示消息「書」刪除「其他」書「找不到」,這是可能的?如果ELSE語句在java中刪除sql joption消息
private void elimina_libroActionPerformed(java.awt.event.ActionEvent evt) {
Connection conn = Connessione.ConnecrDb();
Statement stmt = null;
ResultSet emps = null;
boolean found = false;
try{
if(emps.next())
found= true;
String sql= "DELETE FROM progetto.libro WHERE isbn =?";
pst=(OraclePreparedStatement) conn.prepareStatement(sql);
pst.setString (1, txt_isbn.getText());
pst.execute();
if (!found)
JOptionPane.showMessageDialog(null, "LIBRO ELIMINATO");
else{
JOptionPane.showMessageDialog(null, "BOOK NOT FOUND","ERRORE",jOptionPane.WARNING_MESSAGE);
}
}
catch (Exception e)
{
JOptionPane.showMessageDialog(null,e);
}
但不工作,你可以幫我感謝
我這個
Connection conn = Connessione.ConnecrDb();
Statement stmt = null;
ResultSet emps = null;
try{
String sql= "DELETE FROM progetto.libro WHERE isbn =?";
pst=(OraclePreparedStatement) (PreparedStatement) conn.prepareStatement(sql);
pst.setString (1, txt_isbn.getText());
int deleted = pst.executeUpdate();
if (deleted == 0) {
JOptionPane.showMessageDialog(null, "LIBRO ELIMINATO");
Update_table();
}else
JOptionPane.showMessageDialog(null, "LIBRO NON TROVATO");
}
catch (Exception e)
{
JOptionPane.showMessageDialog(null,e);
}
更改代碼,但如果我插入一個不正確的ISBN的消息是:「書刪除「,如果我插入正確的消息e是「book not found」,如果我再次插入正確的isbn,則該消息是「book delete」,並從數據庫中刪除該書。
這段代碼會在這裏拋出NullPointerException - 'if(emps.next())'。這是你正在運行的實際代碼嗎? – Eran 2014-11-14 14:22:16
你的emps爲空 – Pravin 2014-11-14 14:22:55
你的意思是不工作是什麼意思?在你創建'emps'實例的時候,當你調用下一個方法時它是空的 – user902383 2014-11-14 14:23:53