java - 插入不保存

标签 java mysql sqlite

我的插入没有保存,我不知道我想我搞乱了我的编码有什么帮助吗?

我仍在尝试找出任何帮助,我们将不胜感激

    if(txt_stock_qty.getText().equals("") || txt_stock_product.getText().equals("") || txt_stock_price.getText().equals("") || txt_stock_total.getText().equals("")){
             JOptionPane.showMessageDialog(null, "fill up all data");
                       }else{
             try{



                    String sql1 = "SELECT Product from stocktbl" ;

         pst =conn.prepareStatement(sql1);
         rs=pst.executeQuery();
                 if(rs.next()){
                  String Prob=rs.getString("Product");
                 if(Prob.equals(txt_stock_product.getText())){
                 JOptionPane.showMessageDialog(null, "Existing Data Found");
                 }

                 }else{
                  String sql="INSERT INTO stocktbl (Product,Stock,Price,Total) values(?,?,?,?)";
    pst =conn.prepareStatement(sql);
    pst.setString(1, txt_stock_product.getText());
    pst.setString(2, txt_stock_qty.getText());
    pst.setString(3, txt_stock_price.getText());
    pst.setString(4, txt_stock_total.getText());


    rs=pst.executeQuery();
    pst.execute();

    JOptionPane.showMessageDialog(null, "Saved");

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

        txt_stock_barcode.setText("");
        txt_stock_product.setText("");
        txt_stock_qty.setText("");
        txt_stock_price.setText("");
        txt_stock_total.setText("");
        lbl_stock_barpic.setText("");
        UpdateJTable();

    } 

点击“插入”后,它会清除所有txt,我想我搞砸了

最佳答案

我认为你的错误在于:

rs=pst.executeQuery();
pst.execute();

您正在执行同一个准备好的语句两次。另外,当使用 INSERT 时,您应该使用 pst.executeUpdate(); 并且不能使用 pst.executeQuery();,因为 INSERT 不给出结果集。 pst.executeUpdate(); 仅用于SELECT

再次查看基础知识可能会有所帮助。

关于java - 插入不保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47593944/

相关文章:

java - 在 switch 语句中返回异常,然后抛出被调用的方法

java - 尝试使用 WebService 从 Android 应用程序将数据插入 SQL Server

java - 当页面通过 requestdispatcher.forward 加载时,jquery 在 jsp 中不起作用

android.database.sqlite.SQLiteException : Can't upgrade read-only database from version 0 to 1

java - 只想提取$$text$$

php - MySQL中根据id连接两个表

mysql - LOAD DATA LOCAL INFILE 找不到路径

mysql - 如何将 Limit 和 Offset 与别名一起使用,其中别名是递增的序列号?

sqlite - 如何在 SQLite 中向后滚动游标分页时订购 ASC?

字符串文字中的 SQLite 绑定(bind)