phPmyAdmin,如何创建一个触发器,当有人更新一行中的任何列时,它将在特定列中添加一个“1”

Posted

技术标签:

【中文标题】phPmyAdmin,如何创建一个触发器,当有人更新一行中的任何列时,它将在特定列中添加一个“1”【英文标题】:myPhpAdmin, how to create a trigger that when someone updates any column in a row it will add a "1" in a specific column 【发布时间】:2021-08-07 04:45:35 【问题描述】:

我有一个医院的一组医生的数据库。 如果医生在数据库中更新他/她的信息,我希望在名为“Updated”的列中设置一个值 1,这样我就可以每周对表格进行排序以查看哪些行已更新。

我正在使用 myphpadmin

【问题讨论】:

【参考方案1】:

BEFORE UPDATE 触发器将适用于此任务:

DELIMITER ;;
DROP TRIGGER IF EXISTS `before_update_doctorb`;;
CREATE TRIGGER `before_update_doctorb`
 BEFORE UPDATE ON `Doctorb`
   FOR EACH ROW
 BEGIN
        SET new.`updated` = 1;
   END
;;
DELIMITER ;

或者,updated_at 字段可用于记录何时进行了更新,这样您不仅可以知道是否进行了更新,还可以查看有多旧/过时数据可能是。

【讨论】:

我现在要测试它并告诉你!谢谢 我正在使用 myPhpAdmin。我点击了添加触发器。我将上面的代码放入其中。但它不起作用。我意识到我需要更改适当的列名和表名,但仍然无法正常工作。我确信这与使用 myPhpAdmin 触发器编辑器有关。

以上是关于phPmyAdmin,如何创建一个触发器,当有人更新一行中的任何列时,它将在特定列中添加一个“1”的主要内容,如果未能解决你的问题,请参考以下文章

创建触发器查询在phpMyAdmin中工作完美,但是当我从VBA运行时失败

如何在 XAMPP 的 phpmyadmin 中编辑触发器?

在 phpmyadmin 中创建触发器

Phpmyadmin 中的更新触发器之前如何获取更新的值

phpmyadmin mysql 触发语法错误

PHPMYADMIN 中的过程和触发器