2014-09-17 2 views
0

내 저장LIKE 연산자

ALTER PROCEDURE [dbo].[GetDataByLikeFun] 
    @TblName nvarchar(max),@FieldName nvarchar(max),@ValParam nvarchar(max) 
AS 
BEGIN 
declare @TAblE nvarchar(max); 
set @ValParam='LIKE ''%'[email protected]+'%' 

    set @TAblE = 'Select * From ' + @TblName + ' WHERE ' + @[email protected] 
    exec(@TAblE) 
END 

표시 오류

메시지 105, 수준 15, 상태 1, 줄 3

닫히지 않은 인용 부호 문자열 후 ' %디%'.

메시지 4145, 15 레벨, 상태 1, 라인 3

조건이 가까운 '%의 D %의 "예상되는 상황에서 지정된 비 부울 타입의 표현.

는 하나 LIKE 앞에서

답변

2
set @ValParam='LIKE ''%'[email protected]+'%' 

변화

set @ValParam=' LIKE ''%'[email protected]+'%''' 

에 추가 스페이스 바를 해결하고이 솔루션 입니다

+1

이 대단히 감사합니다 당신의 따옴표 닫습니다 @ ValParam = 'LIKE' '%'+ @ ValParam + '%' ''를 설정하십시오. –