2014-04-14 2 views
0

TEXT 데이터 형식 열에서 검색 작업을 수행하는 동안 시간 초과 오류가 발생합니다. 클라이언트 요청에 따라 전체 텍스트 인덱스를 사용할 수 없습니다. 나는 PATINDEX, CHARINDEXLIKE 진술로 시도했다. 여전히 시간 초과 오류가 발생합니다.SQL Server 2008의 텍스트 데이터 필드 검색

아무도 검색 방법을 제안 할 수 있습니까 TEXT 데이터 형식? 당신은 그러나

WHERE CAST(<text_field> as VARCHAR(max)) LIKE '%something%' 

사용할 수

감사합니다, Eswar

+0

캐스팅 경우 PATINDEX()CHARINDEX()도 작동합니다. SQL Server ** 2008 **을 사용하고 있으므로'TEXT' (**는 구식이며 ** 곧 제거 될 것입니다) 대신'VARCHAR (MAX)'를 사용해야합니다. 그런 칼럼에서 쉽게 –

+0

@ marc_s를 검색 할 수있다. 필자는 Varchar (MAX)를 내 쿼리로 변환하려고 시도했다. 시간 초과 오류가 발생했다. 내 DB에 거의 24 개의 락킹 기록이 있습니다. 데이터 유형을 변경할 수 없습니다. –

답변

0

는 성능이 좋지 않을 것입니다. 나는 Marc_s의 의견에 동의하며, 가능한 경우 데이터베이스의 필드를 변환합니다.

P.S. 그것을 잊지 - 당신은 텍스트 '`과 전체 텍스트 인덱스없이 텍스트 필드