コードを実行しようとしていますが、エラーが発生しています。何が問題になる可能性がありますか。エラーは次のとおりです。com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:SQL構文にエラーがあります。あなたのMySQLサーバーバージョンに対応するマニュアルをチェックして正しい構文を確認し、 'key' VALUES( 'davis'、 '0704254498'、 '0704254498'、now()、 ' key
は、MySQLでの予約語であるため、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);
}
}
}