문자셋 UTF-8로 MySQL 데이터베이스 생성


142

저는 MySQL을 처음 접했고 다음을 알고 싶습니다.

utf-8navicat에서와 같이 charset으로 데이터베이스를 만들려면 어떻게 해야합니까?

create mydatabase;

... 어떤 종류의 기본 문자셋을 사용하는 것으로 보입니다.

답변:


232

참고 : 다음은 이제 더 나은 방법으로 간주됩니다 ( bikeman868의 답변 참조 ).

CREATE DATABASE mydatabase CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

원래 답변 :

이 시도:

CREATE DATABASE mydatabase CHARACTER SET utf8 COLLATE utf8_general_ci;

자세한 내용 은 MySQL Reference Manual의 데이터베이스 문자 집합 및 데이터 정렬 을 참조하십시오.


1
MySQL utf8mb4은 우리의 나머지 부분입니다 utf8. 그렇다면 MySQL은 무엇 utf8입니까? 문자의 하위 집합에만 작동하지만 이모티콘과 같은 기능에는 실패하는 utf-8의 제한된 버전입니다. 나중에 utf8mb4올바른 구현 을 추가 했지만 MySQL은 이전 실수와 역 호환성을 유지해야하므로 이전 코드를 수정하는 대신 새 인코딩을 추가했습니다. 모든 새 데이터베이스는을 사용해야 utf8mb4합니다.
Stijn de Witt

토끼 구멍을 내려 가려면 : COLLATE utf8mb4_unicode_520_ci또는 utf8mb4_0900_ai_ci로케일에 따라 다릅니다 utf8mb4_vi_0900_ai_ci. MariaDB 10.2.2+의 경우 "nopad"데이터 정렬이 utf8mb4_unicode_520_nopad_ci있습니다. dev.mysql.com/doc/refman/8.0/en/charset-unicode-sets.html
Frank Forte

@shellbye 님의 답변을 업데이트하여에 관한 언급을 고려하십시오 utf8mb4_0900_ai_ci. 것 같습니다utf8mb4_unicode_ci
Manuel Jordan

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.