MySQL:添加创建和修改的字段

Ant*_*ony 5 php mysql

在MySQL中添加创建和修改字段的最佳方法是什么:

1)使用像on update CURRENT_TIMESTAMP或等的MySQL功能

2)使用PHP(或其他)?为什么?

如果答案是MySQL,你会怎么做?

Art*_*kel 3

这是一个很好的问题。我想你需要从两个方面来看待这个问题

  • 表现
  • 实施架构

从性能角度来看,如果您已经创建一行或更新一行,那么更新该行上的时间戳可以忽略不计,因此我认为从 php 更新或通过触发器更新之间没有太大区别。

从实现架构的角度来看,触发器相当容易,并且在 php 中,如果您有一个很好的 ORM 架构(或使用 Doctrine 之类的东西),您可以在抽象层中覆盖 save() 逻辑,以便在保存时始终更新创建/修改的时间戳。

因此,就个人而言,如果我几乎通过 ORM 而不是通过触发器或存储过程进行所有数据库访问,我会在 PHP 中实现此功能。