2013-08-27 104 views
-1

我有問題「java.sql.SQLException:數據庫鎖定」與此。我爲我的程序做了一個登錄屏幕,然後打開我設計的jFrame。我做了一個小工具,用於將jtextfields中的數據保存到數據庫中,並將它們顯示到緊靠文本框的jtable。但填充jtextfields後,當我點擊這個按鈕,它給我「java.sql.SQLException:數據庫鎖定」錯誤。我在等你的幫助。 PS:如果您需要登錄屏幕或其他任何東西,只需留下評論或回答,我可以編輯此問題。java.sql.SQLException:數據庫鎖定

private void cmd_saveActionPerformed(java.awt.event.ActionEvent evt) {           

     try{   
      String sql="Insert into maintable(\"Ad-Soyad\",Yaş,Konum,\"E-Posta\",\"Katılım Tarihi\") values (?,?,?,?,?)"; 

      pst=conn.prepareStatement(sql); 

      pst.setString(1, jTextField1.getText()); 
      pst.setString(2, jTextField2.getText()); 
      pst.setString(3, jTextField3.getText()); 
      pst.setString(4, jTextField4.getText()); 
      pst.setString(5, jTextField5.getText());   

      pst.execute(); 
      JOptionPane.showMessageDialog(null, "Kaydedildi !"); 

      } catch(Exception e) {   
       JOptionPane.showMessageDialog(null,e); 
      }    
      } 

編輯:現在點擊按鈕後,它會出現「成功英語」的「Kaydedildi」消息。但它給我帶來了另一個錯誤。

private void Table_EmployeeMouseClicked(java.awt.event.MouseEvent evt) {            
// TODO add your handling code here: 

     try{ 
     int row =Table_Employee.getSelectedRow(); 
     String Table_click=(Table_Employee.getModel().getValueAt(row, 0).toString()); 
     String sql ="select * from maintable where İsim ='"+Table_click+"' "; 
     pst=conn.prepareStatement(sql); 
     rs=pst.executeQuery(); 
     if(rs.next()){ 

     String add1 =rs.getString("İsim"); 
     jTextField1.setText((rs.getString("İsim")).trim()); 

     String add2 =rs.getString("Yaş"); 
     jTextField2.setText((rs.getString("Yaş")).trim()); 

     String add3 =rs.getString("Konum"); 
     jTextField3.setText((rs.getString("Konum")).trim()); 

     String add4 =rs.getString("EPosta"); 
     jTextField4.setText((rs.getString("EPosta")).trim()); 

     String add5 =rs.getString("KatılımTarihi"); 
     jTextField5.setText((rs.getString("KatılımTarihi")).trim()); 




     }   


     }catch(Exception e){ 
     JOptionPane.showMessageDialog(null, e); 



     } 






    }   
+1

您使用的數據庫是?它是Sqlite嗎? – dic19

+1

這些是非常討厭的列名稱。如果您想長期節省很多麻煩,請使用不需要引用的列(和表)名稱。 –

+0

是的SQLite,實際上是Firefox的SQLite管理器插件 – Qce

回答

1

這不是插入pst.execute()的方式。 使用這種方式

pst.executeUpdate(); 
+0

沒有工作,我試過了。同樣的錯誤。 – Qce

+1

@問你得到了什麼錯誤? – SpringLearner