mysql - 如何创建触发器以在更新该行时增加该列?

标签 mysql triggers

database

每次更新此表的一行时,该行的“级别”单元格都必须增加 1。是否有触发器可以帮助解决此问题?

最佳答案

CREATE TRIGGER increment_level
BEFORE UPDATE
ON tablename
FOR EACH ROW
SET NEW.level = OLD.level + 1;

Is it possible to add an if loop which will check whether the status is ongoing or finished and the trigger level should only increment if status is ongoing?

CREATE TRIGGER increment_level
BEFORE UPDATE
ON tablename
FOR EACH ROW
SET NEW.level = OLD.level + (NEW.status = 'ongoing');

关于mysql - 如何创建触发器以在更新该行时增加该列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59981245/

相关文章:

c# - 是否可以使用 Dapper 执行一个链接到 2 个数据库上的表的查询?

sql - 如何使用触发器 Postgres 打印新值

c# - 从事件触发器内更改属性

postgresql - 使用动态字段名称触发

mysql - 计算油耗

php - 当另一个表中的值发生更改时更新表中列的值

hibernate - 数据库触发器和 hibernate

Android 事务或触发器?

mysql - 数据库中的重复记录

mysql - Laravel 5.3 - MySQL 5.7.1 中的数据插入问题