MySQL 是一個流行的關系型數據庫管理系統,它支持完全的 Unicode 字符集,包括中文。
在 MySQL 中,我們可以使用以下幾種字符集:
latin1 -- 西歐字符集
utf8 -- Unicode 字符集
utf8mb4 -- 更強大的 Unicode 字符集
其中,utf8 是最廣泛使用的字符集,它支持大部分的 Unicode 字符。但是,utf8 存在缺陷,它只能存儲最多 3 個字節的 Unicode 字符。如果需要存儲 4 個字節的字符,比如 Emoji 表情,就需要使用 utf8mb4。
CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
上述代碼可以創建一個使用 utf8mb4 字符集和 utf8mb4_general_ci(不區分大小寫)排序規則的名為 mydb 的數據庫。
在創建表時,我們也需要指定字符集和排序規則:
CREATE TABLE mytable (
id INT PRIMARY KEY,
name VARCHAR(20)
) CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
上述代碼創建了一個名為 mytable 的表,它包含一個 id 和一個 name 字段。表的字符集和排序規則與數據庫一致,都使用 utf8mb4 和 utf8mb4_general_ci。
在查詢時,我們需要指定字符集和排序規則:
SELECT * FROM mytable WHERE name LIKE '%中文%' COLLATE utf8mb4_general_ci;
上述代碼查詢 name 字段中包含“中文”字符的記錄,并且使用 utf8mb4_general_ci 排序規則。
總之,MySQL 支持完全的 Unicode 字符集,包括中文。我們可以使用 utf8mb4 字符集和 utf8mb4_general_ci 排序規則來存儲和查詢中文數據。