我的插入没有保存,我不知道我想我搞乱了我的编码有什么帮助吗?
我仍在尝试找出任何帮助,我们将不胜感激
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/