mysql:基于1个输入更新2个表

mysql:基于1个输入更新2个表,mysql,sql,Mysql,Sql,我有两个表:'matches'和'players' 在“比赛”中,我有个人进球,谁进球 在“球员”中,我有个人球员和进球 当球员姓名在“比赛”表中的“球员”旁边获得一个进球时,如何自动更新球员在“球员”表中的总进球数?您可以为比赛表创建触发器。如果添加或删除新记录,触发器将更新球员的进球数 否则,您将进行两个查询:插入比赛记录、更新球员记录我将创建第三个表目标 create table GOALS( GOAL_ID INT, PLAYER_ID INT, MATCH_ID IN

我有两个表:
'matches'
'players'

在“比赛”中,我有个人进球,谁进球

在“球员”中,我有个人球员和进球


当球员姓名在“比赛”表中的“球员”旁边获得一个进球时,如何自动更新球员在“球员”表中的总进球数?

您可以为
比赛
表创建
触发器。如果添加或删除新记录,触发器将更新球员的进球数


否则,您将进行两个查询:插入比赛记录、更新球员记录

我将创建第三个表
目标

create table GOALS(
   GOAL_ID INT,
   PLAYER_ID INT,
   MATCH_ID INT,
   GOAL_TIME DATE,
   ETC...
);
然后使用此表加入
玩家
匹配
表。这允许将所有
目标
存储在一个位置。如果您需要确定球员或比赛期间的进球数量,您可以对进球表执行一个简单的
count()

试试这个

Here third table needed

create table GOAL(
   GID INT(PK),
   PID INT(FK of players),
   MID INT (FK of matches)
);

when This (GOAL) inserted then use a trigger used and update goal of players

CREATE TRIGGER ins_trig AFTER INSERT ON GOAL
    -> FOR EACH ROW
    -> BEGIN
    -> UPDATE players SET goals scored(GIVE THE CONDITION);
    -> END;

如果从同一个表中选择count,触发器是否会出现变异表问题?如果您不选择count,而是在trigger中选择+1/-1,那么多用户交互将失败