You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在phpMyAdmin中创建INSERT后触发器以更新另一张表的字段

MySQL触发器报错修复方案

现有代码存在的问题

  • 触发表名错误:你实际的点赞记录表名为userlikes,触发器定义中误写为user_likes,导致触发器绑定到不存在的表,无法触发执行
  • 字段名不匹配:users表的点赞计数字段为count_likes,更新语句中错写为likes_count,执行时会报字段不存在的错误
  • 新行引用方式错误:行级触发器中要获取刚插入的记录字段值,需要使用NEW关键字指代新插入的行,不能直接通过表名user_likes引用字段

修正后的触发器代码

CREATE TRIGGER `update_count_likes` 
AFTER INSERT 
ON `userlikes` 
FOR EACH ROW
    UPDATE users 
    SET users.count_likes = users.count_likes - 1
    WHERE users.id = NEW.give_like_id;

注:如果业务逻辑是要给收到点赞的用户调整计数,只需要把WHERE条件里的NEW.give_like_id换成NEW.receive_like_id即可。

内容的提问来源于stack exchange,提问作者david

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 04:45:04