是否显示上次数据库字段更新的日期?(php,mysql)


display date of last database field update? (php, mysql)

我不确定这是否可能,但我有一张高尔夫球场表,上面有一个"维护"场地。共102个高尔夫球场。

好吧,我希望能够显示102个高尔夫球场"维护"字段中的任何一个更新的最新日期。

当然,我可以在数据库中创建一个字段,并手动保存日期和时间,但我想看看mysql数据库是否会跟踪它?

如有任何帮助和想法,我们将不胜感激。谢谢

一种方法是添加一个自动更新的last_updated字段。然而,这里的缺点是,当该记录的任何字段被更新时,它将被更新,而不仅仅是maintenance字段。
CREATE TABLE `golf_courses` (
    `id`  int UNSIGNED NULL AUTO_INCREMENT ,
    `maintenance`  text NULL ,
    `last_maintenance`  timestamp NULL ON UPDATE CURRENT_TIMESTAMP ,
    PRIMARY KEY (`id`)
);

当然,正如您所提到的,另一种手动记录上次维护时间的解决方案是:

UPDATE
    `golf_courses` AS `g`
SET
    `g`.`maintenance` = 'new maintenance value',
    `g`.`last_maintenance` = NOW();