W wielu kursach, książkach i ofertach pracy widziałem pola tekstowe zdefiniowane jako VARCHAR (255) jako rodzaj domyślnego dla „krótkiego” tekstu. Czy jest jakiś dobry powód, dla którego długość 255 jest wybierana tak często, poza tym, że jest ładną okrągłą liczbą ? Czy jest to wstrzymanie od jakiegoś czasu w przeszłości, kiedy istniał dobry powód (niezależnie od tego, czy ma to zastosowanie dzisiaj)?
Zdaję sobie oczywiście sprawę, że ściślejsza granica byłaby bardziej idealna, gdybyś w jakiś sposób znała maksymalną długość struny. Ale jeśli używasz VARCHAR (255), prawdopodobnie oznacza to, że nie znasz maksymalnej długości, tylko że jest to „krótki” ciąg.
Uwaga: znalazłem to pytanie ( varchar (255) v tinyblob v tinytext ), które mówi, że VARCHAR ( n ) wymaga n +1 bajtów pamięci dla n <= 255, n +2 bajtów pamięci dla n > 255. Czy to jedyny powód? Wydaje się to dość arbitralne, ponieważ oszczędzałbyś tylko dwa bajty w porównaniu z VARCHAR (256), a równie łatwo mógłbyś zaoszczędzić kolejne dwa bajty, deklarując go jako VARCHAR (253).