如何在 SQL Server 的存储过程中转义字符串,以便在LIKE
表达式中安全使用。
假设我有一个NVARCHAR
像这样的变量:
declare @myString NVARCHAR(100);
我想在LIKE
表达式中使用它:
... WHERE ... LIKE '%' + @myString + '%';
如何在 T-SQL 中转义字符串(更具体地说,是对LIKE
模式匹配有意义的字符,例如%
or ?
),以便以这种方式安全使用?
例如,给定:
@myString = 'aa%bb'
我想:
WHERE ... LIKE '%' + @somehowEscapedMyString + '%'
匹配'aa%bb'
,'caa%bbc'
但不是'aaxbb'
or 'caaxbb'
。