为什么这么多开发人员在创建MySQL表时将varchar设置为254而不是255?
证明发生这种情况:mysql varchar 254
答案 0 :(得分:13)
您的Google查询已经提供了提示。第一个点击之一就是:
https://www.vbulletin.com/forum/project.php?issueid=32655
它基本上说,FULLTEXT
上的VARCHAR(255)
索引需要两倍于VARCHAR(254)
FULLTEXT索引的空间。还有一些其他的膨胀。
我认为这比在数据表中保存一个字节重要得多。
答案 1 :(得分:6)
varchar字段需要n + 1个字节 字段>所需的n + 2个字节255
http://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html
它应该设置为255,我假设开发人员认为他们将从254中保存一个额外的字节,但255是标准的