LIKE표현식 에서 안전하게 사용할 수 있도록 SQL Server의 저장 프로 시저에서 문자열을 이스케이프하려면 어떻게해야합니까?
다음 NVARCHAR과 같은 변수 가 있다고 가정합니다 .
declare @myString NVARCHAR(100);
그리고 LIKE식에서 사용하고 싶습니다 .
... WHERE ... LIKE '%' + @myString + '%';
T-SQL에서 문자열 (더 구체적으로는 LIKE패턴 일치에 의미있는 문자 , 예를 들어 %또는 ?)을 어떻게 이스케이프하여 이러한 방식으로 사용하는 것이 안전합니까?
예를 들면 다음과 같습니다.
@myString = 'aa%bb'
내가 원하는:
WHERE ... LIKE '%' + @somehowEscapedMyString + '%'
일치합니다 'aa%bb', 'caa%bbc'하지만 'aaxbb'나 'caaxbb'.