>  기사  >  데이터 베이스  >  mysql에서 문자셋을 수정하는 방법은 무엇입니까?

mysql에서 문자셋을 수정하는 방법은 무엇입니까?

藏色散人
藏色散人원래의
2019-05-18 15:19:4032988검색

mysql의 문자 집합을 수정하는 방법: 먼저 "my.ini" 구성 파일을 수정한 다음 "alter 데이터베이스 데이터베이스 이름 문자 집합 utf8;" 명령문을 통해 데이터베이스 문자 집합을 수정하고 마지막으로 mysql 데이터베이스 서비스를 다시 시작합니다.

mysql에서 문자셋을 수정하는 방법은 무엇입니까?

1. my.ini 구성 파일(mysql 구성 파일) 수정

character_set_server = utf8 #设置字符集

mysql 데이터베이스 서비스 다시 시작

현재 데이터베이스 문자 집합 보기

show VARIABLES like 'character%';

2. 데이터베이스 문자 집합 수정

alter database 数据库名 character set utf8;

ps: 수정이 완료되었습니다. 데이터베이스 문자 집합을 사용하려면 mysql 데이터베이스를 다시 시작해야 합니다.

3. 테이블 문자 집합 수정

ALTER TABLE  表名 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

모든 테이블 수정 문자 집합 문 생성:

SELECT TABLE_NAME,CONCAT('ALTER TABLE  ',TABLE_NAME,' DEFAULT CHARACTER SET ',a.DEFAULT_CHARACTER_SET_NAME,' COLLATE ',a.DEFAULT_COLLATION_NAME,';') executeSQL FROM information_schema.SCHEMATA a,information_schema.TABLES bWHERE a.SCHEMA_NAME=b.TABLE_SCHEMAAND a.DEFAULT_COLLATION_NAME!=b.TABLE_COLLATIONAND b.TABLE_SCHEMA='数据库名'

4. 열 문자 집합 수정

ALTER TABLE  表名 CHANGE  列名  列名  VARCHAR( 100 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL;

모든 열 수정 문자 집합 문 생성:

select b.table_name,b.column_name,b.character_set_name,b.collation_name
,CONCAT('ALTER TABLE ',b.table_name,' MODIFY ',b.column_name,' ',b.DATA_TYPE,'(',b.CHARACTER_MAXIMUM_LENGTH,') ',CASE WHEN b.COLUMN_DEFAULT IS NULL THEN ''  ELSE CONCAT('DEFAULT \'',b.COLUMN_DEFAULT,'\'') END,' COMMENT \'',b.COLUMN_COMMENT,'\';') executeSQL from information_schema.TABLES a,information_schema.COLUMNS b where  b.character_set_name IS NOT NULL and a.TABLE_SCHEMA=b.TABLE_SCHEMA AND a.TABLE_NAME=b.TABLE_NAMEAND a.TABLE_COLLATION!=b.COLLATION_NAMEand a.TABLE_SCHEMA='数据库名'

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

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