Выберите типы данных, которые представляют данные, которые вы храните.Если вы храните числа, используйте типы данных, предназначенные для хранения чисел.Если вы храните даты, используйте типы данных, предназначенные для хранения дат.
Если все ваши данные действительно являются текстовыми, выберите VARCHAR для столбцов, длина которых может варьироваться, и CHAR для столбцов, длина которых никогда не изменитсяили в тех случаях, когда конечные пробелы не имеют значения.VARCHAR берет один дополнительный байт для хранения длины поля и несет с очень небольшим снижением производительности только потому, что длина является переменной, и это создает больше шагов при извлечении или хранении данных.
Обратите внимание, что вы можете захотетьналожить ограничения на размер столбцов VARCHAR, если вы используете их как часть индекса, поскольку максимальный размер индекса в MySQL составляет 1000 байтов.Поэтому, если вы сделаете все свои столбцы VARCHAR (100), вы сможете создавать составные индексы только вокруг трех таких полей.
(Как примечание: тип VARCHAR (99999) не существует в MySQL -- максимальная длина поля VARCHAR составляет 255, поскольку для хранения длины каждого VARCHAR в записи используется только один байт.)