gpt4 book ai didi

MySQL Workbench 语法无效

转载 作者:行者123 更新时间:2023-11-29 16:46:43 25 4
gpt4 key购买 nike

我是一个相当简单的触发器,

CREATE DEFINER = CURRENT_USER TRIGGER 'nfl`.`games_AFTER_INSERT` AFTER 
INSERT ON `games` FOR EACH ROW
BEGIN
UPDATE nfl.teams t
SET t.passingyards = t.passingyards +:new.homepassingyards,
t.rushingyards = t.rushingyards +:new.homerushingyards
WHERE t.teamname =:new.hometeamname;
END

但是我不断收到奇怪的语法错误:

"+" is not valid at this position for this server version, expecting '-', '*', '/', '%', '<<','>>',...

我运行的是 MySQL 版本 8.0.11 和默认存储引擎 InnoDB。我搜索了MySQL版本,这个版本支持触发器,所以我在这里很迷失。这是顶部声明触发器的方式有问题吗?我不习惯“CREATE DEFINER”语法,并认为这可能是问题所在,但它是当您尝试创建新触发器时 MySQL Workbench 生成的内容。

谢谢

最佳答案

除了前导冒号之外,还有一个简单的语法错误,必须将其删除。您在第一次 nfl 比赛中使用了不同的引号。这是正确的形式:

CREATE DEFINER = CURRENT_USER TRIGGER `nfl`.`games_AFTER_INSERT` AFTER INSERT ON `games` FOR EACH ROW
BEGIN
UPDATE nfl.teams t
SET t.passingyards = t.passingyards + new.homepassingyards,
t.rushingyards = t.rushingyards + new.homerushingyards
WHERE t.teamname = new.hometeamname;
END

关于MySQL Workbench 语法无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53051200/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com