mysql - 删除多行时在 MySQL 表上触发

标签 mysql triggers delete-row

我编写了一个在删除行之前运行的触发器,该触发器更新汇总该表中数据的表。当我一次删除一行时,触发器运行良好。但是,如果我要使用类似的语句一次删除多行

DELETE FROM myTable WHERE id BETWEEN 1 and 100;

触发器是在删除下一行之前完全在第一行运行还是触发器会同时运行?

最佳答案

触发器将针对每一行完全运行,请参阅 Trigger FAQ

A.5.3: Does MySQL 5.6 have statement-level or row-level triggers?

In MySQL 5.6, all triggers are FOR EACH ROW—that is, the trigger is activated for each row that is inserted, updated, or deleted. MySQL 5.6 does not support triggers using FOR EACH STATEMENT.

这对当前最新版本有效,MySQL 5.7也是。

关于mysql - 删除多行时在 MySQL 表上触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25318560/

相关文章:

sql-server - SQL Server删除锁问题

mysql - 如何根据第三个表中的关系合并两个表?

php - 通过php上传图片到服务器

mysql - MySQL 中的电子邮件组

oracle - ORA-04082:表格级触发器中不允许使用NEW或OLD引用

jquery - 使用jquery删除tr

php - 多对多 Doctrine : has user liked the article?

python - 通过 MySQL 触发 Python(从 PHP)

javascript - JS中对象变量改变事件如何处理 ||查询?

Excel 如果在命名范围内,则删除行