집 >데이터 베이스 >MySQL 튜토리얼 >MySQL에서 이중 인코딩된 UTF8 문자를 수정하는 방법은 무엇입니까?
이중 인코딩된 UTF8 문자에서 복구
이전에 LOAD DATA INFILE을 사용하여 가져온 데이터가 Latin1로 인코딩된 것으로 잘못 가정되었습니다. 결과적으로 멀티바이트 문자는 개별 바이트로 분할된 후 UTF8로 인코딩되어 이중 인코딩이 발생했습니다. 이로 인해 "ñ" 대신 "ñ"와 같은 문자가 손상될 수 있습니다.
이러한 오류를 수정하려면 특수 MySQL 기능을 활용하여 이중 인코딩 후 올바른 UTF8 문자열을 복원할 수 있습니다.
CONVERT(CAST(CONVERT(field USING latin1) AS BINARY) USING utf8)
이 함수를 UPDATE 문에 통합하여 영향을 받은 필드를 수정할 수 있습니다.
UPDATE tablename SET field = CONVERT(CAST(CONVERT(field USING latin1) AS BINARY) USING utf8);
이 문을 실행하면 데이터베이스는 이중 인코딩된 값을 올바른 UTF8 값으로 대체하여 다음 문제를 해결합니다. 캐릭터 이상.
위 내용은 MySQL에서 이중 인코딩된 UTF8 문자를 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!