2014-09-13 322 views
-1

你好我已經在數據庫九張球檯在數據庫中的表中有兩個是:什麼是「關係的雙方必須具有相同的列數」錯誤?

tbl_unit 
-------- 
Unit_Number(pk), 
Floor_Number(pk), 
Apartment_plaque(pk), 
BedRoom_Count, 
BathRoom_Count, 
Rental_Fees_Unit, 
Unit_Area, 
Unit_state 

tbl_payment 
----------- 
Renter_National_Code(pk), 
Apartment_Plaque(pk), 
Floor_Number(pk), 
Unit_Number(pk), 
Owner_National_Code, 
Payment_Date, 
Debt, 
Other_Amounts, 
Other_amounts_comment, 
amount_of_payment 

我不能確定無主鍵在tbl_payment作爲主外鍵關鍵在tbl_unit和我收到「雙方的關係必須具有相同數量的列」錯誤

問題是什麼?

+3

查詢是什麼? – dsolimano 2014-09-13 16:21:02

回答

2

表只能有一個主鍵。您的tbl_payment表具有由4列組成的複合主鍵,而tbl_unit表具有3列的複合主鍵。

我相信你想要在tbl_payment表上的外鍵將支付與特定單位聯繫起來。在這種情況下,在tbl_payment上添加一個引用tbl_units主鍵的3列外鍵:

ALTER TABLE dbo.tbl_payment 
ADD CONSTRAINT fk_tbl_payment_tbl_unit 
FOREIGN KEY (
     Unit_Number 
    , Floor_Number 
    , Apartment_plaque 
    ) 
REFERENCES dbo.tbl_unit(
     Unit_Number 
    , Floor_Number 
    , Apartment_plaque 
    ); 
相關問題