在单个表上设计多个多对一关系

问题描述 投票:0回答:1

我的课桌应该有很多媒体内容(而不是媒体内容很多课)。课程使用联结表引用媒体内容,但关系不是多对多:

我没有在media表上定义与外键的关系,因为还有表需要添加。谈话桌和 qiraat 桌也必须有许多媒体内容。 即使关系不是多对多,我是否应该使用联结表引用它们?或者可以(声音设计)向 mediacontent 表添加三个外键(lesson_id、talk_id、qiraat_id)吗?

sql database-design foreign-keys relationship junction-table
1个回答
0
投票

将外键(lesson_id、talk_id、qiraat_id)直接添加到 MediaContent 表可能不是最好的方法,因为它可能会导致冗余和潜在的不一致。使用联结表可以让您保持更简洁的数据库设计并强制执行引用完整性。每节课、演讲或 qiraat 都可以在联结表中拥有自己的条目,引用适当的媒体内容。

© www.soinside.com 2019 - 2024. All rights reserved.