2014-10-13 5 views
1

나는 VARBINARY를 유형의 필드를 사용하는 데이터베이스가 (18) 저장하는 기본 키도 내 눈앞의 결과를 얻을 수 없습니까?

A sample PK: 0x001B7431C732005C4785A14F168EBD1FC5E4 

내가 같은

SELECT * FROM mytable WHERE ID = '0x001B7431C732005C4785A14F168EBD1FC5E4' 

내가 어떤 결과를 얻을 간단한 쿼리를 실행하려고

, PK를 볼 수는 있지만 mytable입니다.

왜 이런 일이 벌어지고 어떻게 수정해야하는지 알 수 있습니까? SQL 2008 R2를 사용하고 있습니다.

감사합니다.

+2

따옴표를 제거하십시오 –

답변

5

따옴표를 사용하지 마십시오.

이는 2 진 리터럴이 아닌 문자열 리터럴을 나타냅니다. 그 결과는 디폴트 조합의 코드 페이지를 사용하여 모든 2 진 컬럼 데이터를 문자열로 내재적으로 변환하는 것입니다. 일치하지 않습니다.

아래 사항 만 있으면됩니다.

SELECT * 
FROM mytable 
WHERE ID = 0x001B7431C732005C4785A14F168EBD1FC5E4 
+0

보이 어떻게 바보 같습니까? 감사합니다. –

+1

@AlbertDorson 나는 이것을하기 위해 처음으로 같은 일을했을 것이라고 확신한다. –

관련 문제