好的,我知道在其他帖子中已经被打死了,但是我试图让这个INSERT命令无效。我使用带有JDBC连接器的MySQL 5.6。我正在从GUI中读取String变量并尝试在INSERT中使用它们。我尝试过使用",`,'并且那里的每一个组合都做到这一点,没有。这是一个非常直接的应用程序,所以我错过了什么。是的,变量确实有值,我查了一下。
try
{
String sql = "INSERT INTO customer(firstname, lastname, address, city, state, zip, phone, email)VALUES (?, ?, ?, ?, ?, ?, ?, ?)";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setString(1, custFirst);
preparedStatement.setString(2, custLast);
preparedStatement.setString(3, custAddress);
preparedStatement.setString(4, custCity);
preparedStatement.setString(5, custState);
preparedStatement.setString(6, custZip);
preparedStatement.setString(7, custPhone);
preparedStatement.setString(8, custEmail);
preparedStatement.executeUpdate();
}
catch(Exception err)
{
System.err.println("Error: " + err.getMessage());
}
答案 0 :(得分:0)
您的查询语句中缺少空格:
"INSERT INTO customer(firstname, lastname, address, city, state, zip, phone, email)VALUES (?, ?, ?, ?, ?, ?, ?, ?)";
^
应该是
"INSERT INTO customer(firstname, lastname, address, city, state, zip, phone, email) VALUES (?, ?, ?, ?, ?, ?, ?, ?)";
答案 1 :(得分:0)
我发现,如果您在尝试向其中插入内容之前连接到数据库,那确实很有帮助。我忘了在我的代码中包含一个连接语句。一旦我补充说它就像一个魅力。想象一下......