在生产环境中可能会出现,项目已经上线,但是更新时间的字段没有赋值,也就是说这条数据每次更新时,更新的时间依旧是null。为了解决这个问题,一般是将程序更新数据时,把更新时间给更新了。但是上线后更改程序需要重新升级,挺麻烦。现在可以通过修改更新时间的字段,来保证每次更新数据时,数据的更新时间自动更新。
在一个已经建好的表执行如下sql即可完成更新时间自动更新:
ALTER TABLE checker_barcode MODIFY COLUMN update_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
其中需要注意的是:
1、将“checker_barcode”替换成你需要更新的表名,将“update_time”替换成你需要更新的字段名称,其余sql不变。
2、执行完此sql后,表里面所有的update_time值为null的数据,update_time全都变成了当前时间。
3、执行更新语句时,如果数据没有真正的改变,update_time值不变,只有数据值改变,update_time才会变成当前时间。
原文地址:http://blog.csdn.net/zl544434558/article/details/48675829