2013-02-17 59 views
0

我正在概念化數據庫。我想要一個包含3列的表格(其中1個是PK,另外2個是FK),我想讓每個組合的列只能有一個元素。兩個外鍵是否足以保證兩者組合的唯一性? (對於這兩列,只能有一行具有相同的值組合)。我是否也應該讓它們成爲複合獨特的關鍵?保證行的唯一性(數據庫)

+0

當你說行時,你是指列嗎? – briantyler 2013-02-17 21:52:23

+0

@ TheMouthofaCow是的,對不起。感謝您的注意。 – Artie 2013-02-17 21:59:18

回答

2

事實上,兩個外鍵都足以保證兩者組合的唯一性?

沒有。

它應該也使他們成爲一個複合獨特的關鍵?

正確。如果你創建一個包含它們的複合唯一密鑰 - 你保證這些對是唯一的(除非它們接受NULL的值)

+0

謝謝:)。作爲一個後續問題:如果他們是一個複合主鍵,唯一性將得到保證以及正確? – Artie 2013-02-17 22:03:28

+0

@ Arthurso:是的PS:但我個人更喜歡避免複合主鍵。還有自然的主鍵。 – zerkms 2013-02-17 22:13:16