2012-02-13 90 views
1

混淆我有一個情況給出如下:與對象的關係

每個學生可以註冊到一個以上的類。 每個班級可以容納不止一個學生。

其下面的是可能的答案:

(1) 1 to N 
(2) M to N to 1 
(3) M to N 
(4) Anything else 

如果答案是(4)比其他的回答是可能......

可察覺任何意見,

thnks米蘭Mendpara

+1

您是否認爲其中的「1」與兩個條件「不止一個」無關? – gbn 2012-02-13 15:24:29

回答

0

它的編號爲3.

多普通學生(M)打電話報名參加多個班級(N)。

1

這是M:N

從兩個實體的角度來看問題找到答案。

  • 每個class可以有很多student實體。所以我們有1:M
  • 每個student可以註冊很多class。所以這也是1:M

在一個規範化的數據庫,你不得不ClassStudent定義(最小)是這樣的:

Class: Id, Name

Student: Id, FirstName, LastName

如果您在Class添加一個外鍵Student你」只允許每個Class有一個單一的Student。如果您將外鍵Student設置爲Class,則您只允許每個Student一次帶一個Class。答案是使用關聯表爲這是一個M:N關係

StudentClass: StudentId, ClassId

希望有所幫助。