2016-04-25 44 views

回答

0

假設你有一個球員表和一張比賽表,我會持有第三張表來映射這兩者之間的關係。該表將保存玩家ID(玩家表的外鍵),匹配ID(匹配表的外鍵)以及這兩者的組合作爲其主鍵。它還可以保存一些附加信息,例如玩家何時出現以及何時出發(例如,通過紅卡或通過替換)。

CREATE TABLE player (
    id INT PRIMARY KEY, 
    -- other player details 
); 

CREATE TABLE match (
    id INT PRIMARY KEY, 
    -- other match details 
); 

CREATE TABLE player_matches (
    player_id INT, 
    match_id INT, 
    minute_on INT NOT NULL DEFAULT 0, 
    minute_off INT, 
    CONSTRAINT player_matches_pk PRIMARY KEY (player_id, match_id), 
    CONSTRAINT fk_player FOREIGN KEY (player_id) REFERENCES player(id), 
    CONSTRAINT fk_match FOREIGN KEY (match_id) REFERENCES match(id) 
); 
相關問題