2 one-many вместо 1 many-many

В В спящем режиме учебное руководство, лучшие практики главы 25 говорят, что мы должны использовать 2 связи "один ко многим" вместо одного many-many с классом промежуточного канала. Я не вижу то, что является преимуществом его: почему лучше создать 3-й объект, в то время как many-many может генерировать объединяющую таблицу, которая действует как этот промежуточный канал. Однако эта рекомендация должна быть там на серьезном основании.

Кто-то может объяснить основание для этой рекомендации?Спасибо.

9
задан user244129 21 May 2010 в 10:09
поделиться

1 ответ

Отношения «многие ко многим» довольно часто приводят к появлению ракушек - дополнительных данных, связанных с самими отношениями, а не с одним из участников отношений (по моему опыту, это скорее норма чем исключение). Например, участники и группы могут быть связаны способом «многие ко многим», и вы хотите знать, когда член присоединился к группе, каков его статус членства (новый, ожидающий, приостановленный, ...) и так далее.

Если вы начнете с моделирования отношения напрямую как многие-ко-многим и напишете весь свой код соответствующим образом, самый первый дополнительный столбец, который попадет в таблицу соединения, сломает вашу модель и связку кода.

10
ответ дан 4 December 2019 в 21:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: