2012-10-17 97 views
0

我現在很困惑,也許你可以幫助我更好地理解問題。不清楚的外鍵和主鍵

有兩個表程序和模塊,

一個程序可以有許多模塊和相同的模塊可在許多程序中,

你將如何在這裏找出主鍵和外鍵?因爲沒有唯一的屬性是唯一的,因爲programme_id可能出現n次,因爲同一程序中有不同的模塊,並且module_id也會出現多次,因爲它存在於許多程序中。

回答

2

的程序將有一個programmeID作爲其主鍵

模塊將有一個moduleID作爲PrimaryKey的

接下來會有第三個表 - 說ModuleProgrammes - 其中有moduleIdprogrammeID爲外鍵。

ModuleProgrammes可能具有moduleidprogrammeid作爲主鍵,或者它可能具有moduleprogrammeid作爲主鍵。

瞭解更多信息,請參見http://en.wikipedia.org/wiki/Junction_table

+0

感謝您的幫助podiluska它仍然很混亂,但這種方法是有道理的。 – Demego

0

好只是爲了更好的設計database..Just用戶的另一個表,並提供新的表作爲foriegn鍵就能程序表的每個主鍵和模塊表的引用減少數據冗餘,並綁定表。