Query는 아래와 같이 실행하였더니,
SELECT * FROM OPENQUERY([linkDB_Server], 'SELECT CASE WHEN [DB].[dbo].funGetCategoryCode(strCategoryCodePath) = ''ST'' THEN NULL END FROM [DB].[dbo].[Item] WITH(NOLOCK) WHERE itemCode = ''180516-1482101-1'' ')
이런 에러가 뜬다.
연결된 서버 "linkDB_Server_TO_JP"의 OLE DB 공급자 "SQLNCLI11"이(가) 메시지 "지연된 준비를 완료할 수 없습니다."을(를) 반환했습니다.
메시지 8180, 수준 16, 상태 1, 줄 133
문을 준비할 수 없습니다.
메시지 468, 수준 16, 상태 9, 줄 133
equal to 작업에서의 "Korean_Wansung_CI_AS"과(와) "Japanese_Unicode_CI_AS" 간의 데이터 정렬 충돌을 해결할 수 없습니다.
해결 방법으로
SELECT * FROM OPENQUERY([linkDB_Server_TO_JP],
'SELECT CASE WHEN [adprintNewDB].[dbo].funGetCategoryCode(strCategoryCodePath) collate Japanese_Unicode_CI_AS = ''ST'' THEN 'GOOD'' END
FROM [adprintNewDB].[dbo].tblOrderItem WITH(NOLOCK)
WHERE strOrderItemCode = ''180516-1482101-1''
')
왜그런가하니,
DB및 테이블 생성 시 설정한 언어의 차이라고 http://guyaga.tistory.com/287 여기 글을 보았다.
자세한 내용은 다음으로 퇴근해야한다.
sp_help [table명]을 검색해보니
Collation이 Japanese_Unicode_CI_AS 되어있다.
'프로그래밍 > MSSQL' 카테고리의 다른 글
MS-SQL 테이블 변수를 활용한 배열 처리 (0) | 2019.01.29 |
---|---|
IDENTITY_INSERT가 OFF로 설정되면 테이블 XXX ID 열에 명시적 값을 삽입할 수 없습니다. (0) | 2018.06.04 |
LinkedServer 프로시저 실행 시 RPC 구성하기 (0) | 2018.05.15 |
오류해결 - has no value!! (0) | 2018.05.15 |
LinkedServer연결 후 - 분산 쿼리에서 Xml 데이터 형식을 사용할 수 없습니다. (0) | 2018.05.11 |