10.1.3.3 테이블 문자 집합 및 데이터 정렬
각 테이블에는 테이블 문자 세트와 테이블 데이터 정렬이 있습니다. CREATE TABLE
및 ALTER TABLE
문은 테이블 문자 집합 및 정렬 순서를 지정하는 옵션 절이 있습니다.
CREATE TABLEtbl_name
(column_list
) [DEFAULT] CHARACTER SETcharset_name
] [COLLATEcollation_name
] ALTER TABLEtbl_name
[DEFAULT] CHARACTER SETcharset_name
] [COLLATEcollation_name
]
예 :
CREATE TABLE t1 (...) CHARACTER SET latin1 COLLATE latin1_danish_ci;
MySQL에서 테이블 문자 세트와 테이블 데이터 정렬을 다음과 같이 선택됩니다.
CHARACTER SET
와X
COLLATE
가 모두 지정된 경우 문자 집합Y
X
와 데이터 정렬Y
가 사용됩니다.CHARACTER SET
는 지정되어 있지만X
COLLATE
는 지정되어 있지 않으면 문자 집합X
와 기본 데이터 정렬이 사용됩니다. 각 문자 집합의 기본 데이터 정렬을 확인하려면SHOW COLLATION
명령문을 사용합니다.COLLATE
는 지정되어 있지만Y
CHARACTER SET
는 지정되어 있지 않은 경우,Y
에 관련된 캐릭터 셋과 콜레 션Y
가 사용됩니다.그렇지 않으면 데이터베이스 문자 집합 및 데이터베이스 데이터 정렬이 사용됩니다.
개별 열 정의에 열 문자 집합 및 정렬 순서가 지정되지 않은 경우 테이블 문자 집합 및 데이터 정렬이 열 정의의 기본값으로 사용됩니다. 테이블 문자 집합 및 정렬 순서는 MySQL의 확장 기능입니다. 이러한 기능은 표준 SQL에는 존재하지 않습니다.