我现在很困惑,也许你可以帮助我更好地理解这个问题。
有两个表程序和模块,
程序可以有许多模块,同一模块可能在许多程序中,
您如何识别主键和外键?因为没有单一属性是唯一的,因为programme_id可能出现n次,因为同一程序中有不同的模块,module_id也会出现多次,因为它存在于许多程序中。
答案 0 :(得分:2)
程序将以programmeID
为主键
模块将以moduleID
为主键
然后会有第三个表格 - 比如ModuleProgrammes
- 其中moduleId
和programmeID
作为外键。
ModuleProgrammes可能有moduleid
和programmeid
作为主键,或者它可能有moduleprogrammeid
作为主键。
答案 1 :(得分:0)
只是为了更好地设计数据库。只需用户另一个表,并在新表中提供Programs表和Modules表的每个主键的引用作为foriegn键,这将减少数据冗余并绑定表。