如何将"ON update current timestamp"添加到现有表列

Rah*_*hul 13 mysql

我的列说ts_activity与MYSQL中的数据类型时间戳,默认值为当前时间戳.我想在此列值上添加更新应用当前时间戳.

我无法获得更改查询来执行此操作.虽然创建新表及其列我可以添加,但无法通过添加更新应用当前时间戳来修改现有列.

有人可以告诉我确切的查询来处理这个问题.我们可以在创建表格后改变它.

谢谢

Ike*_*ker 34

Devart的建议可行,但我更喜欢使用MODIFY COLUMN而不是CHANGE COLUMN如果我不重命名列.

我还假设您的ts_activity列不可为空,因为您有一个默认值,因此我将其设置为NOT NULL,但这取决于您.

这是我将使用的声明:

ALTER TABLE your_table
  MODIFY COLUMN ts_activity TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
Run Code Online (Sandbox Code Playgroud)

  • 同意 NULL/NOT NULL。它应该像以前一样指定。 (2认同)

Dev*_*art 9

试试这个查询 -

ALTER TABLE table_name
  CHANGE COLUMN column_name column_name TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
Run Code Online (Sandbox Code Playgroud)

注意,在表中只有一个字段可以使用'ON UPDATE CURRENT_TIMESTAMP'选项.