MySQL で保護されたキーワードを持つテーブルで SQL クエリを実行
同じ名前を共有するテーブルで SQL クエリを実行しようとしたときMySQL で保護されたキーワードを使用すると、開発者は構文エラーに遭遇する可能性があります。これは、保護されたキーワードが特定の目的のためにデータベース システムによって予約されているためです。
問題例:
次のクエリは、「order」という名前のテーブルからデータを選択しようとします。 :
mysql_query("SELECT * FROM order WHERE orderID = 102;");
ただし、このクエリは次のエラーで失敗します。エラー:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'order WHERE orderID = 102' at line 2
解決策: キーワードのエスケープ
予約されたキーワードと競合する名前を持つテーブルを正常にクエリするには、テーブル名をバッククォートなどのエスケープ文字で囲みます。 (`)。これは、囲まれた識別子がキーワードではなくテーブル名として解釈されるべきであることを MySQL に通知します。
mysql_query("SELECT * FROM `order` WHERE orderID = 102;");
MySQL の予約済みキーワード
潜在的な競合を避けるために、テーブル名またはフィールド名として予約キーワードを使用しないことをお勧めします。予約キーワードの包括的なリストは、https://dev.mysql.com/doc/refman/5.5/en/keywords.html でご覧いただけます。
以上がMySQL で予約キーワードを含むテーブルに対して SQL クエリを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。