MySQL(5.7)数据类型

TEXT类型

下表是所有Text类型,及其最大存储空间

type最大存储空间
TINYBLOB, TINYTEXT2^8 -1,255Bytes
BLOB, TEXT2^16 -1
MEDIUMBLOB, MEDIUMTEXT2^24 -1
LONGBLOB, LONGTEXT2^32 -1

根据charset的不同,所能存储的文字数量也不同
下表是不同charset所消耗的空间

Character SetSupported Characters每个字符所需空间
utf8BMP only1, 2, or 3 bytes
ucs2BMP only2 bytes
utf8mb4BMP and supplementary1, 2, 3, or 4 bytes
utf16BMP and supplementary2 or 4 bytes
utf16leBMP and supplementary2 or 4 bytes
utf32BMP and supplementary4 bytes

BMP和supplementary是啥(Unicode字符平面映射)

根据wiki的解释,得出结论,用utf8和ucs2的话,有些文字将无法保存,所以这两个就排除掉了。
剩下的4个里面,用utf8mb4是最划算的,因为占用空间最少,可表示的文字却和下面3个一样多。

    原文作者:黑不溜秋
    原文地址: https://segmentfault.com/a/1190000019422182
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞