mysql - 在更新触发后检查值是否在 MySQl 中更新

标签 mysql sql-server

我正在将触发器从 MSSQL 转换为 MySQL。在那里我遇到了一个声明

IF NOT UPDATE(UpdatedDateTime)

如何在 MySQL 中检查相同的条件?

最佳答案

在 MySQL 中,您可以比较 NEWOLD 值。 MySQL 提供了一个 null-safe 相等比较器,它返回 true 或 false。 (一个 NULL 值被认为“等于”另一个 NULL 值,“不等于”一个非 NULL 值)

IF NOT ( NEW.updateddatetime <=> OLD.updateddatetime )

注意:我不确定 Transact-SQL UPDATE(foo) 的行为,也不确定我上面发布的内容是否等效。我在上面发布的是如何检测是否为列分配了不同的值;我给出的示例检测是否为列提供值作为UPDATE 语句中SET 子句的一部分。

关于mysql - 在更新触发后检查值是否在 MySQl 中更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28621655/

相关文章:

sql - Coldfusion/sql ASC 顺序,末尾有空格

mysql - 我需要帮助来确定我的删除语句有什么问题

mysql - QTableWidget 有一个包含可检查项目的列,但我无法将复选框的切换提交给 MYSQL db

php - 复选框搜索 php

mysql - 查询多个表

c# - 禁用外键约束代码优先 EF

mysql - 如何在sql中以列方式获取行?

sql - 汇总数据并获取 SUM 组

mysql - 结合这两个查询的最佳方法是什么

c# - 为什么在 sql server 中生成的 MD5 哈希值不相等?