Я вижу, что VARCHAR (255) используется все время вместо VARCHAR (256), но я также вижу VARCHAR (16) вместо VARCHAR (15). Мне это кажется непоследовательным. Если для хранения длины VARCHAR используется дополнительный байт, не должно ли это правило также применяться к меньшим размерам, например, 2, 4, 8 вместо 1, 3, 7?VARCHARS: 2, 4, 8, 16 и т. Д.? Или 1, 3, 7, 15 и т. Д.?
Или я совсем чего-то не хватает?
Другими словами, если у меня есть число, которое, как я знаю, никогда не будет выше 12, я должен просто использовать VARCHAR (15) или VARCHAR (16) вместо этого? Потому что он использует то же пространство, что и VARCHAR (12)? Если да, то какой из них я использую? 15 или 16? Изменяется ли это правило, когда я приближаюсь к 256?
Я использую MySQL и SQL, в зависимости от проекта.
Спасибо. Ответы всех были полезны, но я должен был выбрать один. – jedmao
** @ geocar: ** Если ваш язык базы данных настроен правильно, 'VARCHAR (12)' будет содержать 12 символов. ** 'VARCHAR' соответствует языковым стандартам ** –