jed*_*mao 4 mysql sql storage varchar limit
我看到VARCHAR(255)一直在使用,而不是VARCHAR(256),但我也看到VARCHAR(16)被用来代替VARCHAR(15).这似乎与我不一致.如果使用额外的字节来存储VARCHAR的长度,那么这个规则是否也应该适用于较小的长度,如2,4,8,而不是1,3,7?
还是我完全错过了什么?
换句话说,如果我有一个我知道永远不会超过12的数字,我应该继续使用VARCHAR(15)还是VARCHAR(16)?因为它使用与VARCHAR(12)相同的空间量?如果是这样,我使用哪一个?15或16?当我接近256时,这个规则是否会发生变化?
我使用MySQL和SQL,具体取决于项目.
Joe*_*orn 10
换句话说,如果我有一个我知道永远不会超过12的数字,我应该继续使用VARCHAR(15)还是VARCHAR(16)?
没有!使用varchar(12)(如果长度相当恒定,甚至可以使用char(12)).
曾几何时,varchar类型在某些系统上限制为255个字符(包括5.0.3之前的MySql),因为存储的第一个字节表示字段的长度.鉴于此限制,开发人员希望允许合理数量的文本将选择255而不是完全转到不同的数据类型.
但是,如果您知道数据的大小,请确保使用该数据库的大小.