MySql内存分配

时间:2012-03-29 12:55:55

标签: mysql text size

如果我插入的数据小于列的最大值,MySql如何为“text”和“blob”分配内存?

例如,当我将50K字符串插入“文本”列时会发生什么?是否分配了整个65K列?

1 个答案:

答案 0 :(得分:1)

TEXT数据类型有四种不同的大小 * TINYTEXT *文本 * MEDIUMTEXT * LONGTEXT

它们可以存储的值的最大长度不同。所有都是可变长度类型,因此单个值要求存储等于值的长度(以字符为单位),加上1到4个字节来记录值的长度。不会删除或添加尾随空格以进行存储或检索。

对于可变长度(VARCHAR,TEXT)列,MySQL仅为每个存储值分配所需的空间量。

即。对于Text数据类型Number of characters + 2 bytes,最大长度最多为65,535个字符