2014-02-05 47 views
0

說我有2個表,ballplayers統計在我的數據庫。MySQL - 創建表2中創建記錄表2

當我添加一個棒球運動員記錄(加入一個新的團隊),有沒有辦法創造了統計表中該玩家的新條目中呢?

ballplayers       stats 
id, playername, number   id, totalpts, totalrebounds 

(他們在每個表使用id列引用。)

所以這樣的...說我添加到棒球運動員

ballplayers 
id, playername, number 
    1 Nick  22 

如何MySQL的創建一個新的stats這是在創建該條目時觸發的ballplayers與給定的ID並且默認totalpts和totalrebounds設置爲0?

stats 
id, totalpts, totalrebounds 
    1  0   0 

這是不好的數據庫設計?有沒有可能不必寫兩個查詢? (INSERT INTO ballplayers; & INSERT INTO stats;)任何幫助,將不勝感激。

+0

你有兩個選擇:要麼你做*手動*(2將查詢插入彈球者然後進入統計)或者您可以使用觸發器 –

+0

一個選項可能是將統計數據和玩家信息合併到一個表中,其中包含字段:id,playername,number,totalpts,totalrebounds。 –

+0

http://www.sitepoint.com/how-to-create-mysql-triggers/ – nf071590

回答

0

如果你選擇去觸發的路線,這將自動添加一行到第二個表,你可以這樣做使用下面的代碼:

create trigger trig_ballplayers_after_insert after insert on ballplayers 
for each row insert ignore into stats values(new.id, 0, 0);