MySQL は SELECT、INSERT などの特定の単語を予約しています、DELETEなど、特別な目的のために。これらの単語を適切に処理せずにテーブル名または列名として使用すると、構文エラーが発生する可能性があります。
これを解決するには、2 つのオプションがあります。
予約語を識別子として使用することは完全に避けてください。これにより、将来の構文エラーのリスクが排除され、SQL 方言間の移植性が保証されます。
テーブルまたは列の名前を変更できない場合は、問題のある識別子をバッククォート (`) で囲みます。バッククォートを使用すると、予約語を識別子として使用できます。
たとえば、質問のエラーを修正するには:
INSERT INTO user_details (username, location, `key`) VALUES ('Tim', 'Florida', 42);
キー カラム名をバッククォートで囲むと、MySQL はそれを予約語ではなく識別子を使用して、構文エラーを解決します。
注: バックティック引用符は、識別子に特殊文字が含まれているか、予約語です。キーワードと予約語の完全なリストは、MySQL の公式ドキュメントにあります。
以上が予約語のテーブル名または列名が原因で発生する MySQL 構文エラーを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。