SQL 構文エラー: バックティックを使用して From および To キーワードを修正する
PDO を使用して SQL クエリを操作する場合、列名が次のとおりであることを確認することが重要です。予約されたキーワードと競合しないようにしてください。あなたの場合、SQL の予約キーワードである「from」と「to」を列名として使用しているため、「SQLSTATE[42000]: 構文エラーまたはアクセス違反」というエラーが発生しました。
この問題を解決するには、列名として参照するときに「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 中国語 Web サイトの他の関連記事を参照してください。