0

我目前正在尝试使用嵌入式 SQL 将新数据插入到我的数据库中的现有表中。我需要能够在对话框中输入我的数据,然后在执行后在对话框中将其显示给我。

我的问题似乎与“ s.executeUpdate(input);”有关,因为它告诉我 MySQL 语法有错误。我不确定如何修复它,或者如何更改语法。帮助将不胜感激!

Connection c = null;
try {

    Class.forName("com.mysql.jdbc.Driver");
    c = DriverManager.getConnection("jdbc:mysql://localhost:3306/company - final project", "root", "");

    String query = "INSERT INTO works_on (ESSN, PNO, HOURS)" + "Values (?, ?, ?)";
    Statement s = c.prepareStatement(query);
    String input = JOptionPane.showInputDialog(null, "Info to be Inserted: ");
    s.executeUpdate(input);
    JOptionPane.showMessageDialog(null, "Data Inserted: " + input);

   c.close();
}
catch (Exception e) 
{
    e.printStackTrace();
}
4

1 回答 1

0

您准备好的语句需要 3 个参数,但您没有添加任何参数。需要以s.addXXX正确的顺序调用以指定要插入的 3 个值,其中“XXX”是值的适当类型

于 2015-11-22T00:32:55.607 回答