2013-01-11 133 views
0

目前我還沒有建立任何數據庫,我仍然處在我正在學習使用ER圖和表列表來規劃數據庫的階段。數據庫一對一關係實現

我明白一對一的關係是什麼,何時使用它們,什麼時候避免它們等。我不明白的是他們是如何實現的?他們是否有相同的主鍵?或者我只是簡單地把外鍵放在一個多對多的關係中?

+0

http://www.databaseprimer.com/relationship_1to1.html – Radi

回答

2

人們通常會將其實現爲其中一個表上指向另一個表的主鍵的非空外鍵,並在該外鍵上添加唯一約束。

您還可以添加檢查約束以確保表中的所有外鍵在另一個表中顯示爲主鍵,反之亦然,但這樣做會使添加和刪除兩個表中的項目變得相當困難。

其他兩個選項分別是:

  • 做一個表合併兩個實體。但是這違背了實體和數據分離的概念。
  • 有一個正常的多對多實現並通過上面的約束一對一執行。