>  기사  >  데이터 베이스  >  mysql에서 문자셋을 일괄 수정하는 방법

mysql에서 문자셋을 일괄 수정하는 방법

coldplay.xixi
coldplay.xixi원래의
2020-12-15 14:34:285045검색

MySQL에서 문자 세트를 일괄 수정하는 방법: 먼저 명령문을 사용하여 실제로 실행되는 모든 명령문을 생성한 다음 MySQL 메타데이터 테이블을 기반으로 직접 실행 가능한 SQL 목록 세트를 가져와서 명령문을 직접 붙여넣어야 합니다. 그리고 그들을 실행합니다.

mysql에서 문자셋을 일괄 수정하는 방법

이 튜토리얼의 운영 환경: Windows 7 시스템, mysql 버전 8.0.22, Dell G3 컴퓨터.

관련 무료 학습 권장 사항: mysql 데이터베이스 (동영상)

mysql에서 문자 집합을 일괄 수정하는 방법:

1 데이터베이스 인코딩 및 문자 집합 수정

이 단계는 다음과 같습니다. 비교적 간단합니다. 직접 실행하세요.

ALTER DATABASE db_name CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin;

2. 데이터 테이블과 테이블의 필드의 인코딩 및 문자 집합을 수정합니다.

이 작업에는 두 단계가 필요합니다.

먼저 실제로 실행되는 모든 문을 생성하려면 문을 사용해야 합니다.

SELECT 
CONCAT("ALTER TABLE `", TABLE_NAME,"` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;") 
AS target_tables
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA="db_name"
AND TABLE_TYPE="BASE TABLE"

이 문은 다음과 같이 직접 실행할 수 있는 SQL 목록 집합을 가져오기 위해 MySQL 메타데이터 테이블을 기반으로 합니다.

ALTER TABLE `table1` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
ALTER TABLE `table2` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
ALTER TABLE `table3` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
ALTER TABLE `table4` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
ALTER TABLE `table5` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
ALTER TABLE `table6` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;

그 중 , table1 ~ table6은 데이터베이스의 모든 데이터 테이블입니다.

그런 다음 명령문을 붙여넣고 실행하면 됩니다.

여기에서는 DEFAULT 대신 CONVERT TO가 사용되었습니다. 후자는 테이블 필드의 인코딩 및 문자 집합을 수정하지 않기 때문입니다. CONVERT TO 而非 DEFAULT,是因为后者不会修改表中字段的编码和字符集。

此外,对于数据表比较多的数据库,可以先将第一步的执行结果导出到 .sql

또한, 데이터 테이블이 많은 데이터베이스의 경우 먼저 첫 번째 단계의 실행 결과를 .sql 파일로 내보낸 후 SQL 파일을 통해 실행할 수 있습니다.

관련 무료 학습 권장 사항: php 프로그래밍
(동영상)

🎜

위 내용은 mysql에서 문자셋을 일괄 수정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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