#php #mysql
#php #mysql
Вопрос:
Я пытаюсь создать расписание; в каждом расписании много смен, и в каждой смене много задач. Пользователь может создавать столько смен / задач, сколько захочет. Они могут изменять задачи, изменяя их размер или перенося на другую смену.
Когда я хочу обновить расписание, у меня есть два варианта:
- Удалите все старые записи и просто повторно введите все новые
- Просмотрите все новые сдвиги и попытайтесь найти их в таблице. Если найдено соответствие, то обновите, если нет, создайте новое. И затем мне нужно перебрать все задачи для этой смены и попытаться сделать то же самое (я понятия не имею, как это сделать, поскольку задача, которая, возможно, была для shift_1, теперь может быть частью shift_2).
Итак, мой вопрос заключается в следующем: является ли это излишеством записей MySQL, если я просто удалю все старые строки и введу новые?
Ответ №1:
Это действительно зависит. Ссылаются ли другие объекты на ваши записи и, следовательно, на ваши ключи? Если это так, поиск и замена — ваш единственный вариант (потому что вы действительно не хотите перестраивать индексы, если у вас есть для этого помощь).
Однако, если ничто не ссылается непосредственно на ключи, очистка и перестройка таблицы — это самый быстрый доступный вам вариант.
Комментарии:
1. Нет, ничто другое не ссылается на мое расписание! Итак, я думаю, это отвечает на этот вопрос. Спасибо!