一尘不染

MySQL:为什么使用VARCHAR(20)而不是VARCHAR(255)?

mysql

在MYSQL中,您可以为VARCHAR字段类型选择一个长度。可能的值为1-255。

但是,如果使用最大值而不是VARCHAR(20)的VARCHAR(255),它的优点是什么?据我所知,条目的大小仅取决于插入字符串的实际长度。

大小(字节)=长度+1

因此,如果在VARCHAR(255)字段中有单词“
Example”,则它将有8个字节。如果在VARCHAR(20)字段中具有它,那么它也将具有8个字节。有什么区别?

我希望你能帮助我。提前致谢!


阅读 351

收藏
2020-05-17

共1个答案

一尘不染

签出:Varchar参考

简而言之,除非您在VARCHAR中使用超过255的大小(长度前缀需要另一个字节),否则差别不大。

长度表明对列中存储的数据的约束比其他任何约束更多。这也固有地限制了列的最大存储大小。恕我直言,长度应该对数据有意义。如果您存储的是社会保险号,则将长度设置为128是没有意义的,即使您实际存储的只是一个SSN,也不会花费任何存储空间。

2020-05-17