这是我正在使用的代码(MySql表没有得到更新,并且语句system.out.print(“ error”);正在工作,并且在输出窗口中显示了“ error”):
try {
Class.forName("java.sql.Driver");
String url = "jdbc:mysql://localhost/ghyrdkl";
Connection con = DriverManager.getConnection(url,"abcxyz","xyzabc");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select * from feedback;");
rs.last(); int d = rs.getInt("id");
int idvariable = ++d; String namevariable = nametf.getText(); int starsvariable = Integer.parseInt(starsl.getText()); String wordsvariable = wordsta.getText();
String insert="INSERT INTO feedback VALUES('"+idvariable+"','"+namevariable+"'"+starsvariable+"','"+wordsvariable+"');";
stmt.executeUpdate(insert);
}
catch (Exception e)
{
System.out.print("error");
}
最佳答案
直到您commit,更改才会显示在数据库中。
stmt.executeUpdate(insert);
con.commit(); // exception may occur, prepare to handle SQLException!
但是,这不是您遇到问题的原因。
值
'"+idvariable+"'
是字符串值。大概,idVariable
应该是整数。如果该列不是数字类型,则会出现类型错误,该错误说明了错误打印消息。如果没有抛出实际的异常,可能还有其他无法诊断的问题。代替
System.out.print("error")
考虑e.printStackTrace();
关于java - 为什么我无法通过Java应用程序(netbeans)更新MySql表?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47118246/