2013-01-16 71 views
0

會話下面的數據應該是外鍵還是主鍵?

SessionId (PK) SessionName SessionDuration TotalMarks SessionWeight ModuleId (FK) 
1    AAA   01:00:00  30   20   1 

罰金

SessionId (PK) PenaltyEnalbed 
1    1 

我的問題是,作爲SessionId在罰金錶指Session表,應該SessionId在懲罰表是主密鑰或foriegn鍵?

回答

1

它應該是外鍵,但在處罰中還應該有一個Id作爲主鍵。因此,在點球應該是ID(PK)的SessionID(FK)表Penalty PenaltyEnalbed

+0

[鏈接](http://stackoverflow.com/questions/14350029/can-a-foreign-key-be-created-if-both-fields-are-non-unique)另一個分貝的問題,我有,如果你想看看 – user1914374

1

SessionID既然你已經提到,它是指在表SessionSessionID欄應定義爲FOREIGN KEY

CREATE TABLE Session 
(
    SessionID INT PRIMARY KEY NOT NULL, 
    -- OTHER columns here... 
); 

CREATE TABLE Penalty 
(
    SessionID INT NOT NULL, 
    -- OTHER columns here..., 
    CONSTRAINT penalty_fk FOREIGN KEY (SessionID) 
     REFERENCES Session(SessionID) 
); 
+0

只是被分鐘毆打。我有另一個數據庫的問題,如果你想看看,我的最後一個數據庫問題,我做數據庫[鏈接](http://stackoverflow.com/questions/14350029/can-a-foreign-key-be-created-if-both -fields-是,非唯一) – user1914374

相關問題