MySQL 데이터베이스/테이블/컬럼이 어떤 문자 집합인지 확인하기 위해 예를 들어보겠습니다. 데이터베이스에 이미 존재하는 'business'라는 이름과 테이블 이름이 'student'인 데이터베이스가 사용됩니다.
테이블의 문자 집합을 확인하기 위한 구문입니다.
SELECT CCSA.character_set_name FROM information_schema.`TABLES` T,information_schema.`COLLATION_CHARACTER_SET_APPLICABILITY` CCSAWHERE CCSA.collation_name =T.table_collationAND T.table_schema ="yourDatabaseName"AND T.table_name ="yourTableName";위의 구문을 적용하여 학생 테이블의 문자 집합을 표시합니다.
mysql> SELECT CCSA.character_set_name FROM information_schema.`TABLES` T, -> information_schema.`COLLATION_CHARACTER_SET_APPLICABILITY` CCSA -> WHERE CCSA.collation_name =T.table_collation -> AND T.table_schema ="비즈니스 table_name ="학생";
다음은 출력입니다.
+--------------------+| CHARACTER_SET_NAME |+--------------------+| utf8mb4 |+--------+1 행 세트(0.13초)
데이터베이스의 문자 집합을 찾기 위한 구문은 다음과 같습니다.
SELECT default_character_set_name FROM information_schema.SCHEMATA WHERE schema_name ="yourDatabaseName";
데이터베이스에 대한 문자 집합을 보려면 위의 구문을 적용합니다.
mysql> SELECT default_character_set_name FROM information_schema.SCHEMATA -> WHERE schema_name ="비즈니스";
다음은 출력입니다.
+----------------------------+| DEFAULT_CHARACTER_SET_NAME |+----------------------------+| utf8mb4 |+----------------------------+1행 세트(0.00초)
열의 문자 집합을 찾으려면.
SELECT character_set_name FROM information_schema.`COLUMNS` WHERE table_schema ="yourDatabaseName" AND table_name ="yourTableName" AND column_name ="yourColumnName";
위의 구문을 적용하여 "student" 테이블과 "business" 데이터베이스의 열 이름 'Name'에 어떤 문자 집합이 있는지 확인합니다.
mysql> SELECT character_set_name FROM information_schema.`COLUMNS` -> WHERE table_schema ="비즈니스" -> AND table_name ="학생" -> AND column_name ="이름";
다음은 출력입니다.
+--------------------+| CHARACTER_SET_NAME |+--------------------+| utf8mb4 |+--------+1행 세트(0.00초)