2013-08-17 74 views

回答

1

任何多對多關係都應創建一個新表來表示配對。

例如:假設你有一個表People,並且你想要顯示誰給了生日禮物。一個人可以給許多朋友送禮,而一個人可以接收許多其他人的禮物。

CREATE TABLE People (person_id INT PRIMARY KEY); 

CREATE TABLE GiftGiving (
    from_person_id INT, 
    to_person_id INT, 
    PRIMARY KEY (from_person_id, to_person_id), 
    FOREIGN KEY (from_person_id) REFERENCES People(person_id), 
    FOREIGN KEY (to_person_id) REFERENCES People(person_id) 
); 

回覆您的評論:

對於EF實現,看到這些相關的問題:

+0

這樣可以,但是在Entity Framework中這個關係怎麼工作? –

0

我只是把一個ICollection自己。讓EF處理數據庫層。 public class Person { public virtual ICollection OtherPersons {get; set;} }