我正在尝试执行代码,但我不断收到错误消息。可能是什么问题。错误是:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:您的 SQL 语法有错误;查看与您的 MySQL 服务器版本对应的手册,了解在 'key) VALUES('davis','0704254498','0704254498',now(),'Hope you had a lovely day,'' 在行1
String sql = "INSERT INTO tWebServiceSms(username,mobile,sender_id,time_sent,message_payload,status,key) VALUES(?,?,?,now(),?,?,?)";
PreparedStatement stmt = null;
try {
stmt = conn.prepareStatement(sql);
stmt.setString(1, webServiceSmsOut.getUsername());
stmt.setString(2, webServiceSmsOut.getMobile());
stmt.setString(3, webServiceSmsOut.getSenderId());
stmt.setString(4, webServiceSmsOut.getMessage());
stmt.setInt(5, 0);
stmt.setString(6, webServiceSmsOut.getKey());
int affected = stmt.executeUpdate();
return affected == 1;
} catch (SQLException e) {
Logger.getLogger(WebServiceSmsData.class.getName()).log(Level.SEVERE, "null", e);
return false;
} finally {
if (stmt != null) {
try {
stmt.close();
} catch (SQLException ex) {
Logger.getLogger(WebServiceSmsData.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
最佳答案
单词key
是mysql中的保留字,用来表示一个索引。如果要将其用作标识符名称,则需要用反引号 (`) 将其括起来
关于mysql - 在 java 中将数据插入数据库表 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36301131/