MySQL의 특수 문자 처리: 역설 설명
MySQL에서 'Å', 'ä', 'Ö'는 종종 결과 일관성에 관한 질문을 제기합니다. 예를 들어, 'Harligt'와 'Härligt'를 사용한 쿼리는 동일한 결과를 산출하므로 사용자는 당황하게 됩니다.
이 현상은 MySQL의 기본 데이터 정렬 설정, 특히 "utf8_general_ci" 및 "utf8_unicode_ci"에 기인합니다. 이러한 데이터 정렬은 스칸디나비아 문자를 포함한 특정 유니코드 문자를 영어 문자와 동일시하여 정규화합니다(예: "ä = A"). 이 정규화는 비교 작업 및 검색을 단순화하지만 특정 시나리오에서는 불편할 수 있습니다.
이 문제를 해결하려면 다음 옵션을 고려하십시오.
select * from topics where name='Harligt' COLLATE utf8_bin;
특수 문자의 정규화 없이는 MySQL에서 대소문자를 구분하지 않는 LIKE 작업을 수행할 수 없다는 점에 주목할 가치가 있습니다. 그러나 관련 토론은 여기에서 찾을 수 있습니다.
위 내용은 \'Harligt\' 및 \'Härligt\'가 MySQL에서 동일한 결과를 반환하는 이유는 무엇입니까? 데이터 정렬 및 문자 정규화 살펴보기.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!