可能重复:
如何知道有多少mysql行更新了
我想用php:IF(从table_name更新行){do something}做这样的事情
我的情况是,只要他们更新了我数据库中的一些表,我就需要做一些操作。
是否有任何函数或SQL语句可以查看我的表是否已更新?
使用
if(mysql_affected_rows ($link)>0) {
}
MySQL中除了确定上次更新影响了多少行或查看日志之外,没有任何内容会告诉您记录是否"已更新"。
如果你需要检测一个记录是否已经更新(从任何地方),你实际上是在说,"我的记录与x不同吗?"。因此,您必须将x存储在某个位置。
许多人在表上创建created_date
字段和modified_date
字段,并相应地更新日期。当您插入记录时,您设置了created_date。每当更新记录时,都会设置modified_date。然后,任何具有modified_date的记录都已"更新"。
如果您的应用程序无法插入日期值,则可以使用触发器。
我不确定你想要什么,但你可以使用:
if (mysql_affected_rows($connection) > 0) {
}
此外,如果要在数据库端执行操作,请定义一个触发器,该触发器在记录更新时启动。