PDO 構文エラー: 「SQL 構文にエラーがあります」
PDO で SQL クエリを実行すると、エラー "SQLSTATE[42000]: 構文エラーまたはアクセス違反: 1064 SQL にエラーがあります。構文。」このエラーは、予約されたキーワードが適切に引用符で囲まれずに列名として使用されている場合によく発生します。
ここで示した例では、INSERT ステートメントで列名「from」を使用しています。 「from」は SQL の予約キーワードであり、バックティック (`) を使用して引用符で囲む必要があります。
$sql = "INSERT INTO messages (`from`, `to`, `name`, `subject`, `message`) VALUES (:from, :to, :name, :subject, :message)";
さらに、「to」も予約キーワードであり、同様に引用符で囲む必要があります。
$sql = "INSERT INTO messages (`from`, `to`, `name`, `subject`, `message`) VALUES (:from, :to, :name, :subject, :message)";
もう 1 つのオプションは、予約キーワードの使用を避けるために列の名前を変更することです。たとえば、「from」の代わりに、「sender」または「from_email」を使用できます。
列の名前を変更するか、予約されたキーワードを引用符で囲むと、構文エラーが解決され、クエリが正常に実行できるようになります。
以上がPDO で「SQLSTATE[42000]: 構文エラーまたはアクセス違反: 1064 SQL 構文にエラーがあります」を修正する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。