2015-11-17 94 views
1

我工作的Java應用程序,並努力嘗試在SQLite數據庫更新記錄,但它不工作.. BTW它沒有給我任何異常或錯誤更新SQL Java不工作

String sql="update Food_Fresh set available=? where Type_ID =?"; 
      st=con.prepareStatement(sql); 
      st.setInt(1, 1); 
      st.setInt(2, num); 
      st.executeUpdate(); 

      st.close(); 

什麼問題?

UPDATE 是,SQL

try{ 
     Class.forName("org.sqlite.JDBC"); 
     Connection con=DriverManager.getConnection("jdbc:sqlite:C:\\Users\\Shatha2012\\Desktop\\Core\\IT\\Graduation Project\\Code\\New folder\\Food\\src\\Food\\Food.sqlite"); 
     JOptionPane.showMessageDialog(null, "DONE"); 
     return con; 
    } 
    catch(Exception e) 
    { 
     JOptionPane.showMessageDialog(null, e); 
     return null; 
    } 
} 

的初始化並設置爲提交自動提交

+0

的問題可能是一個沒有地方記錄數。請嘗試打印出最後的SQL(就在st.executeUpdate()之前),然後直接在SQLite中運行該查詢。 – TR1

+0

你確定你要交易嗎? – Mureinik

+1

狂猜:切換參數1和2.您總是爲不同的Ids提交金額爲1(名爲num ?!) – Jan

回答

0

也許有您的數據庫沒有記錄與TYPE_ID = NUM​​? 檢查從的executeUpdate(返回)

int i = st.executeUpdate(); 

值,它會顯示你的更新

+0

它約爲20 ..但是當我檢查分貝......沒有任何改變! – Shathaaah