MySQL中当记录更新时 timestamp类型自动更新时间


做项目需要用到这个特性。

我使用navicat,如果将日期类型选择为timestamp时,会发现IDE多了一个选项:

MySQL

查看IDE自动生成的sql语句:

 写道 `lastUpdate` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP

 如果去掉这个选项后:

 写道 `lastUpdate` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00'

 区别就是“ ON UPDATE CURRENT_TIMESTAMP”了,他的作用就是当记录有“变化“时会自动更新lastUpdate时间为系统当前时间。 

注意:特意强调了有变化,换句话说,即使使用update语句,但是内容没有变化的话,该值就不会自动更新了。

相关内容