SQL Server の QUOTENAME 関数の用途
QUOTENAME 関数は、特殊文字や予約語を含む識別子(テーブル名、列名、データベース名など)を引用符で囲み、SQL ステートメントで使用できるようにします。この関数は、SQL ステートメントで識別子を正常に解決できない場合に、識別子が識別できるようにします。
例えば、テーブル名が「Employee」の場合、QUOTENAME 関数を使用することで “[Employee]” と囲って表名を使用できます。こうすることで、SQL ステートメント内でテーブル名を使用する場合、テーブル名の中に空白や特殊文字があっても、SQL Server で正しく解釈されます。
QUOTENAME関数の例を次に示します。
全件取得
クォートネーム(‘‘マイ テーブル’’)から
結果が返されます:[My Table]
動的SQL文の構築時に、QUOTENAME関数を用いるとSQLインジェクション攻撃を防ぐことができ、SQL文の安全性を確保できます。