Why do so many developers set varchar to 254 and not 255 when creating MySQL tables?
Proof that this happens: mysql varchar 254
Why do so many developers set varchar to 254 and not 255 when creating MySQL tables?
Proof that this happens: mysql varchar 254
varchar fields require n+1 bytes for fields less than or equal to 255 and required n+2 bytes for fields > 255
http://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html
It should be set to 255, I'm assuming developers think they will save an extra byte from 254, but 255 is the standard
Your Google query gave you the hints already. One of the first hits is this:
https://www.vbulletin.com/forum/project.php?issueid=32655
It basically says, that FULLTEXT
indexes on VARCHAR(255)
require twice the space of a VARCHAR(254)
FULLTEXT index. And some more other bloat on top of that.
I think this is far more important than saving one byte in the data table.