Простите меня, если я не использую подходящую лексику.
Я планирую внедрить базу данных MySQL с интерфейсом PHP, чтобы я мог вводить данные и файлы рабочего задания (снимки экрана, ZIP-файлы и т. Д.) В указанную базу данных. На данный момент мои предыдущие рабочие задания сохраняются в электронных файлах PST, и неудобно монтировать их по одному для просмотра и поиска предыдущих рабочих заказов.
Описание наряда на работу может быть коротким предложением до многих тысяч символов. Если у меня есть столбцы как VARCHAR (я) или типов данных TEXT / MEDIUMTEXT, будет ли выделено максимальное пространство для каждого поля или база данных будет увеличивать количество полей до объема, разрешенного типом данных?
Я полагаю, что визуальный способ задать этот вопрос: является ли мое текстовое поле чашкой с неизменным объемом с переменным количеством воды или это воздушный шар с увеличивающимся объемом воздуха?
Это воздушный шар. Если вы поместите в поле всего пару байтов текста, эта «ячейка» займет всего пару байтов (плюс любые затраты на структуру ячеек). Предполагается, что вы используете один из наиболее распространенных движков.
Однако структура клетки может меняться в размере; это не игра с нулевой суммой. Столбец LONGTEXT занимает 4 байта на столбец в строке. VARCHAR занимает только 1 байт на столбец в строке. Эти байты используются для описания длины данных в фактической ячейке. В наши дни, когда хранилище настолько дешево, это не имеет особого значения, если вы не говорите о сотнях миллионов строк. 1 миллион строк пустого LONGTEXT будет использовать 3,82 МБ, а 1 миллион строк пустого VARCHAR будет использовать 0,95 МБ