Я понимаю различия между CHAR и VARCHAR, одно из которых имеет фиксированную длину, а другое переменную длину, и что если все поля в строке имеют фиксированную длину, таблица, как правило, будет работать лучше.
Однако, что мне неясно, так это то, что, если я даю VARCHAR длину, такую как VARCHAR (500), это сохраняет строку как фиксированную длину?
Для контекста у меня есть чистая таблица с 50 столбцами, в основном TINYINT, но мне нужно два столбца в этой таблице как VARCHAR, так как они должны хранить до 500 символов в каждом. Точная длина зависит от пользовательского ввода и поэтому неизвестна.
В качестве дополнительной квалификации я не хочу помещать эти поля VARCHAR в отдельную таблицу, на которую ссылаются, поскольку она создает ненужные объединения и не очень эффективно соответствует ожидаемым шаблонам запросов.
Любая помощь будет оценена. Спасибо.