У меня есть список записей, которые будут храниться в таблице базы данных, но мне сложно сконструировать базу данных. Следующие данные будут храниться:
Класс (строки) и "День" (колонка) будут продолжать расти в будущем. Моя первоначальная идея имеет 2 дизайна.
Конструкция таблицы для дизайна базы данных будет точно такой же, как и в текущей таблице. Но проблема была бы в том, как бы добавить день13? Это будет страдать в будущем, в колонке продолжат расти.
Добавьте 1 столбец в результате:
Лучше решить проблему столбца "День", которая будет расти в будущем, но проблема заключается в том, что она будет хранить большое количество записей данных в базе данных, что делает запрос медленнее, когда все больше и больше данных вставляются.
Любая идея или методика оптимизации дизайна базы данных? Спасибо.
Таким образом, класс может иметь результат и дату. Просто убедитесь, что у вас есть уникальный первичный ключ в таблице Class и введите правильные типы данных для ваших полей. Я думаю, что вам нужен ClassId для первичного ключа, а затем создайте поле ClassName (varchar) для хранения имени класса. Не пишите Day1, это должен быть формат даты.
Может быть, что-то простое.
Одна таблица для классов (ClassID, ClassName)
Одна таблица для дня/периода/того, что вы называете (DayID, DayName, DayInMonth и т.д.)
Одна таблица для результатов (ResultId, DayId, ClassId, Result)