ホームページ > データベース > mysql チュートリアル > PDO で「SQLSTATE[42000]: 構文エラーまたはアクセス違反: 1064 SQL 構文にエラーがあります」を修正する方法は?

PDO で「SQLSTATE[42000]: 構文エラーまたはアクセス違反: 1064 SQL 構文にエラーがあります」を修正する方法は?

Linda Hamilton
リリース: 2024-12-31 09:13:20
オリジナル
471 人が閲覧しました

How to Fix

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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート