ホームページ > データベース > mysql チュートリアル > SQL Server ストアド プロシージャで角括弧を含むテキストを検索するにはどうすればよいですか?

SQL Server ストアド プロシージャで角括弧を含むテキストを検索するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2025-01-07 16:16:42
オリジナル
837 人が閲覧しました

How to Search for Text Containing Square Brackets in SQL Server Stored Procedures?

SQL Server ストアド プロシージャ内の角かっこを含むテキスト検索方法

SQL Server では、コードのメンテナンスと最適化のために、ストアド プロシージャ内のテキストの検索が重要です。ただし、角括弧などの特殊文字を含めると問題が発生する可能性があります。

質問:

SQL クエリがストアド プロシージャ内で '[ABD]' (角括弧を含む) の正確なインスタンスを見つけられないという問題が発生する可能性があります。その理由は、角括弧がワイルドカードとして扱われ、検索文字列の一部ではないためです。

解決策:

この問題を解決するには、角括弧をエスケープする必要があります。 T-SQL では、エスケープ文字 (バックスラッシュなど) を追加することでこれを実現できます。角括弧をエスケープすると、角括弧は検索文字列のリテラル部分として扱われます。

更新されたクエリは次のようになります:

<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>
ログイン後にコピー

手順:

角括弧の前にエスケープ文字 ( ) を追加すると、基本的に、ワイルドカード文字として解釈されず、検索文字列の一部として含める必要があることをクエリに指示することになります。これにより、ストアド プロシージャ内の '[ABD]' テキストの完全一致が可能になります。

以上がSQL Server ストアド プロシージャで角括弧を含むテキストを検索するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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