우리는 고유 식별자와 함께 SQL Server 2012를 사용하고 있으며 추가 문자를 추가하여 선택하면 36 문자가 아닌 UUID와 일치하는 결과를 반환합니다.
예를 들면 다음과 같습니다.
select * from some_table where uuid = '7DA26ECB-D599-4469-91D4-F9136EC0B4E8'
uuid가있는 행을 반환합니다 7DA26ECB-D599-4469-91D4-F9136EC0B4E8
.
그러나 당신이 실행하면 :
select * from some_table where uuid = '7DA26ECB-D599-4469-91D4-F9136EC0B4E8EXTRACHARS'
또한 uuid가있는 행을 반환합니다 7DA26ECB-D599-4469-91D4-F9136EC0B4E8
.
SQL Server는 선택을 수행 할 때 36자를 초과하는 모든 문자를 무시하는 것 같습니다. 이것은 버그 / 기능 또는 구성 가능한 것입니까?
프론트 엔드에서 길이에 대한 유효성 검사가 있기 때문에 큰 문제는 아니지만 올바른 동작으로 보이지 않습니다.