SQL 语法错误:使用反引号更正 From 和 To 关键字
使用 PDO 处理 SQL 查询时,确保列名至关重要不要与保留关键字冲突。在您的例子中,您遇到了错误“SQLSTATE[42000]:语法错误或访问冲突”,因为您使用“from”和“to”作为列名,它们是 SQL 中的保留关键字。
要解决此问题,请在将“from”和“to”作为列名称引用时将它们括在反引号 ( ) 中。 MySQL 中使用反引号来引用列名并防止它们被解释为关键字。
修改后的查询应如下所示:
INSERT INTO messages (`from`, `to`, name, subject, message) VALUES (:from, :to, :name, :subject, :message)
此外,您需要重命名$vals 数组中的 'from' 和 'to' 键反映更新后的列名称:
$vals = array( ':from' => $email, ':to' => $recipient, ':name' => $name, ':subject' => $subject, ':message' = >$message );
通过进行这些调整,您将成功执行 SQL 查询,而不会遇到语法错误。
以上是SQL 语法错误:如何更正 PDO 查询中的'from”和'to”列名?的详细内容。更多信息请关注PHP中文网其他相关文章!