选择合适的数据类型大小?

时间:2012-04-29 03:51:32

标签: mysql sql

例如,在varchar数据类型上,我允许用户名的最大字符数为25.这是否意味着最佳列为varchar(25)


编辑:这是否也意味着字符串的长度=字符串的大小?

2 个答案:

答案 0 :(得分:1)

MySQL中VARCHAR列的大小实际上并不重要!在大多数(全部?)存储引擎下,每行所需的存储量不会增加,因为列的大小最多为VARCHAR(255)。使用VARCHAR(256)或更大的每行将使用一个额外的字节,但仍然不是很多。 (此时您可能想要考虑使用TEXT列。)

因此,对您的色谱柱尺寸要慷慨。避免将非技术限制(例如用户名中限制为25个字符)硬编码到数据库中 - 如果您稍后改变主意,更改验证代码要比更改可能非常大的表更容易。例如,对于用户名,我只是将列大小设置为像VARCHAR(64)这样中等荒谬的东西,以便将来扩展。如果相同的“数据类型”(例如用户名)出现在数据库的其他地方,请确保一致地使用相同的大小。

答案 1 :(得分:-1)

或者只是char(25)。但varchar(25)听起来不错。