mysql - 在mysql中创建事件删除行

标签 mysql events

如何创建一个事件,以便在另一个表中的值更改时自动删除行? 我的表格将如下所示:

tbl_people
+----+-------+----------+
| ID |  NAME |  STATUS  |
+----+-------+----------+
|  1 | name1 |  active  |
|  3 | name3 |  active  |
+----+-------+----------+

tbl_activities
+----+---------+-------+
| ID | ID_NAME |  NAME |
+----+---------+-------+
|  1 |    1    | name1 |
|  2 |    3    | name3 |
+----+---------+-------+

当 tbl_people 的 id 为 3 时,它在 tbl_activities 中从事件变为非事件,以自动删除 id 为 2 的行

谢谢!

最佳答案

尝试使用触发器

   CREATE TRIGGER bfr_upd_activity BEFORE UPDATE ON tbl_people
   FOR EACH ROW
   BEGIN
      if new.status <> 'active' then 
        delete from tbl_activities where id_name = new.id;
      end if;
   END;//

关于mysql - 在mysql中创建事件删除行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49465520/

相关文章:

events - CKEDITOR-如何添加永久的onclick事件?

java - 如何使用 Sawtooth Java SDK 创建 channel 事件?

c# - 捕获和处理 Web 浏览器关闭事件

c# - 匿名函数委托(delegate) yield

class - 如何将 WithEvents 关键字与全局变量一起使用?

mysql - "show databases"不显示数据库

php - 如何在数据库搜索中获取单行数据

php - 如何将 PHP session 数据保存到数据库而不是文件系统中?

mysql - 在哪里可以找到 "MySQL Developers"认证的好的学习 Material ?

php - Laravel 5 Eloquent 不在数据库中存储特殊字符