Нельзя безусловно считать «один ко многим» лучше, чем «многие ко многим». Сначала определяют бизнес-правило: может ли один объект быть связан сразу с несколькими объектами с другой стороны?
Почему при выборе между решением через многие ко многим и один ко многим лучше выбрать один ко многим?
Нельзя безусловно считать «один ко многим» лучше, чем «многие ко многим». Сначала определяют бизнес-правило: может ли один объект быть связан сразу с несколькими объектами с другой стороны?
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Нельзя безусловно считать «один ко многим» лучше, чем «многие ко многим». Сначала определяют бизнес-правило: может ли один объект быть связан сразу с несколькими объектами с другой стороны?
Если у каждой записи только один родитель, внешний ключ в дочерней таблице обычно достаточно прост и понятен. Если связей действительно несколько с обеих сторон, нужна связующая таблица: замена на один-ко-многим потеряет допустимые отношения или приведёт к дублированию данных.
При одинаковой способности выразить требования более простая модель предпочтительна, но производительность не гарантируется одним названием связи: она зависит от запросов, объёма данных и индексов.