在 phpMyAdmin 中编辑时自动更新日期列

Automatically updating date column on edit in phpMyAdmin

我正在开发一个小型网站,对于这个项目,我想使用 phpMyAdmin 的用户界面直接在数据库中编辑项目,而不是为该网站构建管理用户界面。我将像这样快速编辑项目:


(来源:forumbilder.se

(没有实际使用wordpress,只是拿了一个随机的数据库table作为例子)

问题是我有一个列保存最后一次编辑该行的日期时间,我不知道如何在进行这样的编辑后自动更新该列。任何帮助将不胜感激。

您可以通过使用应用 ON UPDATE CURRENT_TIMESTAMP 子句的 TIMESTAMP 列来实现此目的 - 请参阅 https://dev.mysql.com/doc/refman/5.0/en/timestamp-initialization.html

因此,如果您要从头开始创建 table:

CREATE TABLE t1 (
  ...
  post_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  post_content ...
  ...
);

或者如果您已经有 table,您可以更改相关栏目:

ALTER TABLE t1 MODIFY post_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP

请注意,两个示例中的列定义都为新记录设置了当前 date/time 的默认值。这通常是此功能的实现方式,但当然您的要求可能会有所不同,因此您可能希望设置不同的默认值。

更新: 如果您希望使用 phpMyAdmin 实现此功能:

  1. 浏览到有问题的 table
  2. 单击结构 选项卡
  3. 单击相关列的编辑图标
  4. 在下一页中,设置列属性如下: