2014-02-05 49 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);