Mysql获取表更新时间update_time注意事项
2017-06-16 18:35
405 查看
程序中经常需要在线判断表的数据变化,若有变化,需要重新加载。要实现这个功能,有很多方法啦
不嫌麻烦的可以自己设置表做记录,自己在每个update、delete、add之后做记录
善用触发器的,可以添加触发器将更新标记写表
其实最省事儿的是从mysql的表信息表(information_schema)中查询该表的update_time的变化即可
但是,使用这个方法之前要要注意下mysql服务的版本,5.5.44之前的版本只有MyISAM引擎可以正常查询到该值,
若是InnoDB引擎,update_time值是不会有更新,总是null值。
检索表的语句如下:
如果第一次新建的表可能还没有update_time,所以这里用了ifnull,当update_time为null时用create_time替代
database()获取当前连接配置的db名称,这样就可以在配置中灵活切换数据库了。
不嫌麻烦的可以自己设置表做记录,自己在每个update、delete、add之后做记录
善用触发器的,可以添加触发器将更新标记写表
其实最省事儿的是从mysql的表信息表(information_schema)中查询该表的update_time的变化即可
但是,使用这个方法之前要要注意下mysql服务的版本,5.5.44之前的版本只有MyISAM引擎可以正常查询到该值,
若是InnoDB引擎,update_time值是不会有更新,总是null值。
检索表的语句如下:
select ifnull(update_time , create_time) from information_schema.`TABLES` where table_schema=database() and table_name='mytable';
如果第一次新建的表可能还没有update_time,所以这里用了ifnull,当update_time为null时用create_time替代
database()获取当前连接配置的db名称,这样就可以在配置中灵活切换数据库了。
相关文章推荐
- mysql获取数据库表最后更新时间,update_time 为null
- mysql获取数据库表最后更新时间,update_time 为null (update_time innodb)
- Mysql update语句赋值嵌套select,更新和查询同一张表,必须取别名;用例:更新指定游戏服务器最后启动记录的结束时间
- Mysql中,update语句引起的时间戳自动更新问题
- mysql根据某个字段分组根据更新时间获取最新的记录
- PHP获取远程文件最后更新时间
- mysql update in 嵌套子查询更新
- 在MySQL中获取当前时间的几种方式
- mysql 用一条sql语句修改两个表里的内容,一条sql语句update更新两个表
- MySQL UPDATE更新语句精解第1/2页
- .NET从互联网上获取当前时间并更新系统时间
- mysql多表join时候update更新数据的方法
- PHP中Date获取时间不正确的解决方法(2009-05-15更新)
- 关于mysql 自动更新时间的 类型说明
- mysql 获取系统时间
- c# 获取系统时间显示,并随时更新
- UpdateSourceTrigger 属性控制绑定源更新的执行时间
- Java中Date时间获取与转化(随学习进度不断更新)
- mysql从一个表提取数据更新另外一个表(Cross Table Update with MySQL)
- PHP获取远程文件最后更新时间