文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (美國信紙) - 40.0Mb
PDF (A4) - 40.1Mb
Man Pages (TGZ) - 258.2Kb
Man Pages (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 參考手冊  /  ...  /  utf8mb3 字元集 (3 位元組 UTF-8 Unicode 編碼)

12.9.2 utf8mb3 字元集 (3 位元組 UTF-8 Unicode 編碼)

utf8mb3 字元集具有以下特性

  • 僅支援 BMP 字元(不支援補充字元)

  • 每個多位元組字元最多需要三個位元組。

使用 UTF-8 資料但需要補充字元支援的應用程式應使用 utf8mb4 而非 utf8mb3 (請參閱 第 12.9.1 節, 「utf8mb4 字元集 (4 位元組 UTF-8 Unicode 編碼)」)。

utf8mb3ucs2 中可用的字元集完全相同。也就是說,它們具有相同的字符

注意

MySQL 建議使用的字元集是 utf8mb4。所有新應用程式都應使用 utf8mb4

utf8mb3 字元集已棄用。utf8mb3 在 MySQL 8.0.x 和 MySQL 8.4.x LTS 發行系列的生命週期內仍受支援。

預期 utf8mb3 將在 MySQL 的未來主要版本中移除。

由於變更字元集可能是一項複雜且耗時的任務,您現在應開始準備此變更,方法是將 utf8mb4 用於新的應用程式。有關轉換使用 utfmb3 的現有應用程式的指引,請參閱第 12.9.8 節,「在 3 位元組與 4 位元組 Unicode 字元集之間轉換」

utf8mb3 可用於 CHARACTER SET 子句中,而 utf8mb3_collation_substring 可用於 COLLATE 子句中,其中 collation_substringbinczech_cidanish_ciesperanto_ciestonian_ci 等等。例如

CREATE TABLE t (s1 CHAR(1)) CHARACTER SET utf8mb3;
SELECT * FROM t WHERE s1 COLLATE utf8mb3_general_ci = 'x';
DECLARE x VARCHAR(5) CHARACTER SET utf8mb3 COLLATE utf8mb3_danish_ci;
SELECT CAST('a' AS CHAR CHARACTER SET utf8mb4) COLLATE utf8mb4_czech_ci;

在諸如 SHOW CREATE TABLESELECT CHARACTER_SET_NAME FROM INFORMATION_SCHEMA.COLUMNSSELECT COLLATION_NAME FROM INFORMATION_SCHEMA.COLUMNS 等陳述式中,以 utf8utf8_ 為字首的字元集或校對名稱會分別使用 utf8mb3utf8mb3_ 來顯示。

utf8mb3CHARACTER SET 子句以外的內容中也有效(但已棄用)。例如

mysqld --character-set-server=utf8mb3
SET NAMES 'utf8mb3'; /* and other SET statements that have similar effect */
SELECT _utf8mb3 'a';

有關與多位元組字元集相關的資料類型儲存資訊,請參閱字串類型儲存需求