Gunakan SHOW CREATE TABLE
. Misalnya:
CREATE TABLE a (
dflt VARCHAR(11),
cs VARCHAR(11) CHARACTER SET latin1,
cola VARCHAR(11) COLLATE utf8mb4_hungarian_ci,
cc VARCHAR(11) CHARACTER SET latin1 COLLATE latin1_bin,
colb VARCHAR(11) COLLATE latin1_bin
);
SHOW CREATE TABLE a\G
mysql> SHOW CREATE TABLE a\G
*************************** 1. row ***************************
Table: a
Create Table: CREATE TABLE `a` (
`dflt` varchar(11) DEFAULT NULL,
`cs` varchar(11) CHARACTER SET latin1 COLLATE latin1_swedish_ci DEFAULT NULL,
`cola` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_hungarian_ci DEFAULT NULL,
`cc` varchar(11) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
`colb` varchar(11) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
Catatan:
- Sebagian besar kolom memiliki rangkaian karakter dan susunan yang dieja.
- Yang tidak (
dflt
) mewarisi pengaturan tersebut dariDEFAULTs
untuk meja. - Setiap
CHARACTER SET
memiliki susunan "default". - Setiap
COLLATE
diasosiasikan dengan tepat satuCHARACTER SET
, yaitu bagian pertama dari nama susunan. - (Tidak ditampilkan di sini):
DEFAULTs
untuk tabel diwarisi dariDATABASE
. - MySQL 8 default ke
CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
jika Anda tidak melakukan apa-apa. - Versi lama default ke
CHARSET=latin1 COLLATE=latin1_swedish_ci
- "0900" atau "520" dalam beberapa susunan mengacu pada Standar Unicode versi 9.0 dan 5.20. Dari sini Anda dapat menyimpulkan bahwa mungkin ada koleksi baru yang "lebih baik" di masa mendatang.