Joh*_* M. 6 mysql sql database
我需要将数据存储到MySQL中.它的长度不固定,长度可以是255或2个字符.我应该使用TINYTEXT还是VARCHAR以节省空间(速度无关紧要)?
作为数据的存储空间,VARCHAR(255)
并TINYTEXT
是等效的:
VARCHAR(M):如果列值需要0 - 255字节,则为L + 1个字节;如果值可能需要超过255个字节,则为L + 2个字节.
TINYTEXT:L + 1个字节,其中L <2 8.
来源:MySQL参考手册:数据存储要求.
存储空间相同,您可能需要查看以下Stack Overflow帖子,以便在您应该使用其中一个时进一步阅读:
使用VARCHAR时,您需要指定将存储在该列中的最大字符数.因此,如果将列声明为VARCHAR(255),则表示您可以存储最多255个字符的文本.这里重要的是,如果你插入两个字符,只会存储这两个字符,即分配的空间将是2而不是255.
TINYTEXT是四种TEXT类型之一.它们与VARCHAR非常相似,但差异很小(这取决于您使用的MySQL版本).但是对于5.5版本,TEXT类型有一些限制.首先,您必须为TEXT上的索引指定索引前缀长度.另一个是TEXT列不能有默认值.
通常,TEXT应该用于(极长)值.如果您将使用最多255个字符的字符串,那么您应该使用VARCHAR.
希望这会有所帮助.
归档时间: |
|
查看次数: |
6418 次 |
最近记录: |