java.sql.SQLException:数据库已锁定

时间:2013-08-27 13:07:38

标签: java sql database sqlite netbeans

我遇到问题“java.sql.SQLException:Database Locked”。我为我的程序做了一个登录屏幕,之后它打开了我设计的jFrame。我做了一个小按钮,用于将jtextfields中的数据保存到数据库中,并将它们显示到文本字段旁边的jtable。但是在填充jtextfields之后,当我点击这个按钮时,它给了我“java.sql.SQLException:Database Locked”错误。我在等你的帮忙。

PS:如果您需要登录界面或其他任何内容,只需发表评论或回答,我可以编辑此问题。

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 个答案:

答案 0 :(得分:1)

这不是插入pst.execute()的方法; 用这种方式

pst.executeUpdate();