2010-06-02 90 views

回答

1

不能正常有沒有識別爲唯一的列的一列或組合的強制執行措施的索引的外鍵引用(如,但不限於,一個主鍵)

排版應具有ID作爲主鍵

DVD應該有id作爲主鍵

comp2dvd應該有id作爲主鍵

comp2dvd笑ULD有id_comp爲外鍵引用(comp.id)

comp2dvd應該id_dvd爲外鍵引用(dvd.id)

不要讓comp2dvd對一列的唯一索引或約束(id_comp ,id_dvd),因爲您需要具有多個相同驅動器的計算機的副本

0

通過添加外鍵到id_comp和id_dvd?

+0

如果鏈接表只有id_comp和id_dvd,但這對我不起作用,這將工作。如果我嘗試添加外鍵,則會出現此錯誤:表'dvd'中的列與現有主鍵或UNIQUE約束不匹配。 – Gromul 2010-06-02 02:04:06

1

爲什麼不直接使用直接連接表?您可以在連接表上添加一個約束,以允許使用一個DVDID +計算機組合。

Computer -----> CompDVD <------ DVD --------> Model 
ID    CompID   ID   ID 
       DVDID 
+0

我注意到一臺電腦可以有兩個相同的DVD驅動器的實例。 DVD表擁有獨特的DVD機型。 – Gromul 2010-06-02 02:01:25

+0

那麼,你說「電腦可以有多個DVD驅動器,即使是相同的型號」,但我認爲每臺電腦的實際物理驅動器都是獨一無二的,當然? – RobS 2010-06-02 02:09:57

+0

我會把獨特的DVD模型放入一個單獨的表格中,如圖所示 – RobS 2010-06-02 02:10:37

相關問題