插入后触发更新另一个表中的一个记录

时间:2012-11-27 07:16:24

标签: mysql triggers phpmyadmin

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

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

插入新订阅记录时,我想更新成员表中的失效日期字段。

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

这是我在phpmyadmin中输入创建触发器拨号的地方:

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

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

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

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

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

此功能正确:)