"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > UTF8 문자 인코딩을 사용하여 MySQL에서 테이블 형식을 보존하는 방법은 무엇입니까?

UTF8 문자 인코딩을 사용하여 MySQL에서 테이블 형식을 보존하는 방법은 무엇입니까?

2024-11-06에 게시됨
검색:321

How to Preserve Table Formatting in MySQL with UTF8 Character Encoding?

UTF8 문자 인코딩으로 MySQL 명령줄 형식 향상

데이터베이스 테이블에 저장된 스웨덴어 및 노르웨이어 문자열로 작업하는 동안 데이터를 쿼리할 때 테이블 형식 관련 문제가 발생할 수 있습니다. 다른 문자 집합을 사용합니다.

문제 설명

기본적으로 "set names latin1;"을 사용합니다. 왜곡된 출력을 생성합니다:

 ----------------------------------- 
| name                              |
 ----------------------------------- 
| Kid Interi#####                   | 
| Bwg Homes                         | 
| If Skadef####kring                | 
| Jangaard Export                   | 
| Nordisk Film                      | 
 ----------------------------------- 

"set names utf8;"로 전환 중 문자를 올바르게 표시하지만 표 형식을 방해합니다.

 ----------------------------------- 
| name                              |
 ----------------------------------- 
| Kid Interiør                     | 
| Bwg Homes                         | 
| If Skadeförsäkring              | 
| Jangaard Export                   | 
| Nordisk Film                      | 
 ----------------------------------- 

해결책

보존하려면 UTF8 문자 인코딩을 사용하는 동안 표 형식 형식을 지정하면 "--default-character-set=utf8" 옵션을 사용하여 MySQL 클라이언트를 시작할 수 있습니다:

mysql --default-character-set=utf8

이를 기본 설정으로 구성할 수도 있습니다. "/etc/mysql/my.cnf" 파일:

[mysql]
default-character-set=utf8

이것은 Character_set_client, Character_set_connection 및 Character_set_results 구성 변수를 utf8로 설정합니다.

형식 문제가 지속되면 데이터베이스, 테이블 및 열도 다음 명령을 사용하여 utf8로 설정합니다:

SHOW VARIABLES LIKE '%CHAR%';
SET character-set-server = utf8;

또한 latin1 연결로 작성되었을 수 있는 유니코드 문자가 있는지 확인하세요. 이 문제를 해결하려면 값이 작성된 것과 동일한 문자 세트를 사용하여 데이터베이스에 연결하거나 올바른 인코딩을 사용하여 해당 문자 세트를 검색하고 다시 작성하십시오.

참고: MySQL의 utf8 인코딩은 완전한 유니코드가 아닙니다. 구현. 진정한 UTF-8 구현을 위해 utf8mb4 문자 세트 사용을 고려하십시오:

mysql --default-character-set=utf8mb4
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3