Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从JTextField更新SQLite数据库行不工作,对数据库没有任何更改。所有连接良好,以前使用的连接已关闭_Java_Mysql_Sql_Sqlite_Jdbc - Fatal编程技术网

Java 从JTextField更新SQLite数据库行不工作,对数据库没有任何更改。所有连接良好,以前使用的连接已关闭

Java 从JTextField更新SQLite数据库行不工作,对数据库没有任何更改。所有连接良好,以前使用的连接已关闭,java,mysql,sql,sqlite,jdbc,Java,Mysql,Sql,Sqlite,Jdbc,我正在使用JavaSwing和SQLite制作一个GUI应用程序(工资单系统)。我的问题是,当我尝试从JTextField更新SQLite数据库行时,它不会对数据库进行任何更改。但我的插入、查看和删除功能运行良好。 请帮忙。以前打开的连接、pst和结果集在使用后关闭 JButton btnUpdate = new JButton("Update"); btnUpdate.addActionListener(new ActionListener() { public voi

我正在使用JavaSwing和SQLite制作一个GUI应用程序(工资单系统)。我的问题是,当我尝试从JTextField更新SQLite数据库行时,它不会对数据库进行任何更改。但我的插入、查看和删除功能运行良好。 请帮忙。以前打开的连接、pst和结果集在使用后关闭

JButton btnUpdate = new JButton("Update");
    btnUpdate.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {

            try{

                String val1=name.getText();
                String val2=e_id.getText();
                String val3=email.getText();
                String val4=emp_type.getText();
                String val5=desig.getText();
                String val6=dept.getText();
                String val7=sex.getText();
                String val8=h_no.getText();
                String val9=st_name.getText();
                String val10=city.getText();
                String val11=state.getText();
                String val12=pin_code.getText();

                String val14=report_to.getText();
                String val15=a_sal.getText();
                String val16=bonus.getText();
                String val17=m_sal.getText();
                String val18=emp_sr.getText();

                String sql="update emp set     e_id='"+val2+"',name='"+name.getText()+"', email='"+val3+"',emp_type='"+val4+"',desig='"+val5+"',"
                        + "dept='"+val6+"',sex='"+val7+"',h_no='"+val8+"', st_name = '"+val9+"', city = '"+val10+"', "
                                + "state ='"+val11+"',pin_code ='"+val12+"', report_to ='"+val14+"', a_sal ='"+val15+"', "
                                        + "bonus ='"+val16+"', m_sal ='"+val17+"' where e_id='"+emp_sr.getText()+"' ";

                PreparedStatement pst=connection.prepareStatement(sql);

                pst.executeUpdate();

            }catch(Exception e1) {JOptionPane.showMessageDialog(null, "Record Updated");

            }finally{}
        }
    });

尝试打印查询,并与数据库一起检查条件语句是否有效?如果在堆栈跟踪后遇到任何异常tracee_id='“+emp_sr.getText()?e_id=e_id.getText()!
emp_sr.getText()
如果已经将其存储在变量中,为什么要在sql字符串中使用它?显示的事实是“记录已更新”“如果出现异常情况,则相当可疑。。。您可能希望打印异常。并且,请正确使用准备好的语句,不要将值连接到查询字符串中。使用参数。尝试打印查询并与数据库一起检查条件语句是否有效?如果在堆栈跟踪后遇到任何异常tracee_id='“+emp_sr.getText()?e_id=e_id.getText()!
emp_sr.getText()
如果已经将其存储在变量中,为什么要在sql字符串中使用它?显示的事实是“记录已更新”“如果出现异常情况,则相当可疑。。。您可能希望打印异常。并且,请正确使用准备好的语句,不要将值连接到查询字符串中。使用参数。