下表是全部Text類型,及其最大存儲空間code
type | 最大存儲空間 |
---|---|
TINYBLOB, TINYTEXT | 2^8 -1,255Bytes |
BLOB, TEXT | 2^16 -1 |
MEDIUMBLOB, MEDIUMTEXT | 2^24 -1 |
LONGBLOB, LONGTEXT | 2^32 -1 |
根據charset的不一樣,所能存儲的文字數量也不一樣
下表是不一樣charset所消耗的空間ip
Character Set | Supported Characters | 每一個字符所需空間 |
---|---|---|
utf8 | BMP only | 1, 2, or 3 bytes |
ucs2 | BMP only | 2 bytes |
utf8mb4 | BMP and supplementary | 1, 2, 3, or 4 bytes |
utf16 | BMP and supplementary | 2 or 4 bytes |
utf16le | BMP and supplementary | 2 or 4 bytes |
utf32 | BMP and supplementary | 4 bytes |
BMP和supplementary是啥(Unicode字符平面映射)get
根據wiki的解釋,得出結論,用utf8和ucs2的話,有些文字將沒法保存,因此這兩個就排除掉了。
剩下的4個裏面,用utf8mb4是最划算的,由於佔用空間最少,可表示的文字卻和下面3個同樣多。table