>  기사  >  백엔드 개발  >  UTF8 테이블의 Latin1 문자를 UTF8로 변환하는 방법은 무엇입니까?

UTF8 테이블의 Latin1 문자를 UTF8로 변환하는 방법은 무엇입니까?

DDD
DDD원래의
2024-11-02 13:51:02693검색

How to Convert Latin1 Characters in a UTF8 Table to UTF8?

UTF8 테이블의 latin1 문자를 UTF8로 변환

PHP 스크립트에 mysql_set_charset('utf8')을 삽입하지 못한 것을 발견했습니다. , 이제 모든 테이블이 utf8_unicode_ci 조합이므로 발음 구별 부호가 있는 문자 삽입이 제대로 작동하지 않습니다.

이전에는 발음 구별 부호가 있는 항목을 삽입하려고 할 때마다 불일치로 인해 데이터가 잘못 표시되었습니다. 문자 집합에서. 그러나 PHP와 MySQL 사이의 문자 세트를 수정한 후 이제 새로운 삽입이 올바르게 저장됩니다.

다음 단계는 여전히 엉망인 이전 행을 모두 수정하는 것입니다. mb_convert_encoding 및 iconv를 사용해 보았으나 특정 문자 뒤에서 문자열이 잘립니다.

데이터를 복구하려면 다음과 같은 MySQL 함수를 사용할 수 있습니다.

convert(cast(convert(name using latin1) as binary) using utf8)

방법에 따라 인코딩 변환 중에 데이터가 변경된 경우 내부 변환을 생략해야 할 수도 있습니다. 이 기능은 데이터를 Latin-1에서 바이너리로 변환한 다음 UTF-8로 변환하여 모든 문자가 올바르게 표시되도록 합니다.

위 내용은 UTF8 테이블의 Latin1 문자를 UTF8로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.