mysql - 插入后触发更新另一表中的一条记录

标签 mysql triggers phpmyadmin

我正在尝试在 phpMyadmin (MySQL) 中创建触发器

我有两个表,成员表和订阅表。订阅有一个日期字段(订阅到期的日期),成员(member)也有。这两个表有一个共同的member.ID字段。

当插入新的订阅记录时,我想更新成员(member)表中的到期日期字段。

触发器设置在表订阅上,插入后更新

这是我在 phpmyadmin 中的创建触发器对话框中输入的内容:

UPDATE members
SET members.mbrshp_expiry_date = subscriptions.expiry_date
WHERE  members.mbrshp_number = subscriptions.mbrshp_number

当此代码触发时,它会返回错误。未找到子句中引用的两个订阅字段。

任何帮助将不胜感激。

最佳答案

可以使用 NEW 前缀在触发器中引用字段。

UPDATE members 
SET members.mbrshp_expiry_date = NEW.expiry_date 
WHERE members.mbrshp_number = NEW.mbrshp_number

此功能正确:)

关于mysql - 插入后触发更新另一表中的一条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13579174/

相关文章:

javascript - 弹出成功更新数据库 PHP

Jquery - 模拟点击按钮不触发功能

mysql - Apache 未启动如何解决此错误;本地主机数据库不工作

mysql - 如何从wp_postmeta获取meta_key?

php - MySQL 选择其中列等于字符串的一部分

Mysql全文搜索加号

php - MySQL : How to run heavy analytical query at real time

Mysql选择最大值和排序日期

mysql - 使用过程和触发器更新表

mysql - mysql中的触发器不允许某些列对重复值