ホームページ >データベース >mysql チュートリアル >列名に予約キーワードを使用した場合の SQLSTATE[42000] 構文エラーを修正する方法
SQLSTATE[42000] エラーのトラブルシューティング: 構文エラーまたはアクセス違反
コードで、エラー「SQLSTATE[42000]:」が発生します。予約キーワードを列名として使用しているため、構文エラーまたはアクセス違反が発生します。具体的には、列名「from」は SQL の予約キーワードです。
解決策:
この問題を解決するには、予約された列名を引用符で囲む必要があります。 MySQL では、カラム名はバッククォート (`) を使用して引用符で囲まれます。したがって、コード内の問題のある行は次のように変更する必要があります:
$sql = "INSERT INTO messages (`from`, `to`, `name`, `subject`, `message`) VALUES (:from, :to, :name, :subject, :message)";
追加の考慮事項:
「to」は SQL の予約キーワードでもあることに注意してください。 。したがって、これも引用符で囲む必要があり、次の行が変更されます:
$sql = "INSERT INTO messages (`from`, `to`, `name`, `subject`, `message`) VALUES (:from, :to, :name, :subject, :message)";
以上が列名に予約キーワードを使用した場合の SQLSTATE[42000] 構文エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。