Java 而(rs1.next())不返回任何值
}Java 而(rs1.next())不返回任何值,java,mysql,Java,Mysql,} 这显示成功,但数据库中没有返回电话名、保修和年或月 因为executeUpdate返回受影响的行数。如果大于0,则未删除任何内容,并且您正在检查相同的IMEI,该IMEI已消失。因此,如果您说'System.err.printlnrs1.isLast;它将返回true,因为select语句找不到任何行。不要认为这些INSERT查询执行成功。日期是Mysql的保留字。在它周围加上引号 下面是所有的列表。那么,您如何知道您的查询实际返回了您期望的结果呢?您是否在应用程序之外运行它?您在选择之前已
这显示成功,但数据库中没有返回电话名、保修和年或月 因为executeUpdate返回受影响的行数。如果大于0,则未删除任何内容,并且您正在检查相同的IMEI,该IMEI已消失。因此,如果您说'System.err.printlnrs1.isLast;它将返回true,因为select语句找不到任何行。不要认为这些INSERT查询执行成功。日期是Mysql的保留字。在它周围加上引号
下面是所有的列表。那么,您如何知道您的查询实际返回了您期望的结果呢?您是否在应用程序之外运行它?您在选择之前已删除记录。不是吗?这只是一个建议,您不应该编写类似字符串updatepn=DELETE FROM phonestock的查询,其中IMEI='+IMEI+';它使代码易于SQLinjection,从而导致对数据库的未经授权的访问。请改用preparedstatement。提示在所有数据库名称上添加尾随下划线。例如:日期。SQL规范明确承诺永远不使用尾随下划线。因此,将它添加到所有名称中意味着您永远不必担心与标准SQL和数据库系统中所有各种扩展所使用的1000多个关键字和保留字发生冲突。看这个。关于另一个问题的更多信息。哎呀,我评论中的URL应该是。此外,还讨论了SQL中的各种保留字列表和各种数据库实现。现在做一个好网民,投票选出所有有帮助的答案?
public void addPhoneInvoice(String IMEI,String price,String name,
String pNumber) throws SQLException {
con = GetConnection.GetConnection();
stmt = con.createStatement();
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd");
Date date = new Date();
String date1 = dateFormat.format(date);
this.price = Double.parseDouble(price);
String updatePhn = "DELETE FROM phonestock where IMEI = '"+IMEI+"'";
int j = stmt.executeUpdate(updatePhn);
if(j!=0){
String getDescriptionQuary = "SELECT PhoneName,WarrantyPeriod,YearORMonth FROM phonestock WHERE IMEI = '"+IMEI+"'";
ResultSet rs1 = stmt.executeQuery(getDescriptionQuary);
while(rs1.next()){
this.phoneName = rs1.getString("PhoneName");
this.warranty = rs1.getInt("WarrantyPeriod");
this.yearOrMonth = rs1.getString("YearORMonth");
}
String addPhnTemp = "INSERT INTO invoiceTemp(Description,Date,IMEI,Price,Amount,ContactName,ContactNumber,Warranty,YearOrMonth) VALUES ('"+phoneName+"','"+date1+"','"+IMEI+"',"+price+","+price+",'"+name+"','"+pNumber+"',"+warranty+",'"+yearOrMonth+"')";
String addPhnPer = "INSERT INTO invoicepermanent(Description,Date,IMEI,Price,Amount,ContactName,ContactNumber,Warranty,YearOrMonth) VALUES ('"+phoneName+"','"+date1+"','"+IMEI+"',"+price+","+price+",'"+name+"','"+pNumber+"',"+warranty+",'"+yearOrMonth+"')";
int i = stmt.executeUpdate(addPhnTemp);
i = stmt.executeUpdate(addPhnPer);
if(i != 0)
JOptionPane.showMessageDialog(null,"Success");
}
else
JOptionPane.showMessageDialog(null,"Error");
}