ホームページ > データベース > mysql チュートリアル > SQL Server ストアド プロシージャでテキストを検索するときに角かっこをエスケープする方法

SQL Server ストアド プロシージャでテキストを検索するときに角かっこをエスケープする方法

Barbara Streisand
リリース: 2025-01-07 16:17:45
オリジナル
668 人が閲覧しました

How to Escape Square Brackets When Searching Text in SQL Server Stored Procedures?

SQL Server ストアド プロシージャのテキスト検索での角括弧の処理

sys.sql_modulessys.objects を使用して SQL Server ストアド プロシージャ内のテキストを検索する場合、角括弧を扱う場合は注意が必要です。 標準の検索では、括弧で囲まれたテキストを正しく検索できないことがよくあります。

解決策は、ESCAPE 演算子を含む LIKE 句を使用して角括弧をエスケープすることです。 これにより、SQL Server はバックスラッシュをエスケープ文字として扱い、括弧がワイルドカード文字として解釈されるのを防ぎます。

修正されたクエリは次のとおりです:

<code class="language-sql">SELECT DISTINCT
       o.name AS Object_Name,
       o.type_desc
FROM sys.sql_modules m
INNER JOIN sys.objects o ON m.object_id = o.object_id
WHERE m.definition LIKE '%\[ABD\]%' ESCAPE '\';</code>
ログイン後にコピー

ESCAPE '' 句は、角括弧の前にあるバックスラッシュ () が角括弧をリテラル文字として扱い、括弧で囲まれたテキスト "[ABD]" の正確な一致を保証することを示します。 エスケープしないと、括弧が特殊文字として解釈され、不正確な検索結果が得られます。

以上がSQL Server ストアド プロシージャでテキストを検索するときに角かっこをエスケープする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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