ホームページ > データベース > mysql チュートリアル > SQL のバッククォートと角括弧: どちらの識別子引用符を使用する必要がありますか?

SQL のバッククォートと角括弧: どちらの識別子引用符を使用する必要がありますか?

Mary-Kate Olsen
リリース: 2024-12-31 21:32:09
オリジナル
686 人が閲覧しました

Backticks vs. Square Brackets in SQL: Which Identifier Quote Should I Use?

SQL ステートメントのマークアップ: バックティックと角括弧

SQL ステートメントでフィールド名またはテーブル名を定義する場合、開発者は多くの場合、それらを文字で囲みます。予約されたキーワードや特殊文字を防ぐため。 MySQL では通常、これはバックティック (``) で行われますが、SQL Server または MS Access では角括弧 ([]) が使用されます。

互換性の違い

バッククォートと角括弧の主な違いは、データベースの互換性にあります。バッククォートは MySQL 専用ですが、角括弧は SQL Server/T-SQL および MS Access で使用されます。したがって、SQL Server でバッククォートを使用すると、構文エラーが発生する可能性があります。

MySQL のバッククォートについて

MySQL では、バッククォートは識別子の引用符として機能します。これらを使用すると、開発者は、予約されたキーワード、大文字と小文字の区別、または特殊文字と競合するテーブル名またはフィールド名を囲むことができます。

例:

SELECT * FROM `select` WHERE `select`.id > 100;
ログイン後にコピー

ANSI_QUOTES の考慮事項

MySQL は、二重引用符で囲んだ識別子の引用符もサポートしています。 ANSI_QUOTES SQL モードが有効です。

例:

SET sql_mode='ANSI_QUOTES';
CREATE TABLE "test" (col INT);
ログイン後にコピー

結論

バッククォートと角括弧は両方ともフィールドとテーブルを保護するという目的を達成します。名前の使用は、使用されている特定のデータベース テクノロジによって異なります。 MySQL の場合はバッククォートのみを使用する必要がありますが、SQL Server または MS Access の場合は角かっこが適切な選択です。

以上がSQL のバッククォートと角括弧: どちらの識別子引用符を使用する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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