mysql - Mysql 更新相关表时出现错误 1442
问题描述
我有两张桌子,玩家和答案。Answer 有一个特定问题的回答分数列表和一个可识别的 PlayerID,而 Player 应该保存总分数和其他信息。
这是我的触发器:
CREATE TRIGGER answer_insert BEFORE INSERT ON Answer FOR EACH ROW
UPDATE Player SET Score = Score + New.Score
WHERE PlayerID = New.PlayerID;
CREATE TRIGGER answer_update BEFORE UPDATE ON Answer FOR EACH ROW
UPDATE Player SET Score = Score + (New.Score - Old.Score)
WHERE PlayerID = Old.PlayerID;
它可以很好地创建它们,但是在进行更新/插入时会使我的应用程序崩溃。难道我做错了什么?
错误信息是:
无法更新存储函数/触发器中的表“播放器”,因为它已被调用此存储函数/触发器的语句使用
解决方案
推荐阅读
- python - 如何定义输入为列名的函数?
- windows - 拒绝连接到“blob:http://XXX”,因为它违反了以下内容安全策略指令:“connect-src 'self'
- node.js - 仅 http cookie Node.js,React 的会话管理问题
- php - json 文件到 mysql 数据库插入为“数组”的列
- aws-lambda - AppSync 与 AWS4 和混合身份验证类型(UserPools 和 IAM)
- firebase - Firebase 扩展删除用户数据不适用于 {DEFAULT} 存储桶
- javascript - 将动态布尔属性传递给 VueJS 组件
- asterisk - 如何在数据库中保存带星号的事件
- ssl - 路由器将自己的 SSL 证书而不是我的域提供给 LAN 主机
- tkinter - 如何从子窗口中的输入框中获取文本(字符串)值到变量中