【发布时间】:2018-09-12 14:33:47
【问题描述】:
在服务器中,我有 MySQL 版本:
5.1.61
它有一个名为 test 的表,有 10 列和 10K 行。 现在我决定添加一个新列
ts TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;
添加了新列 ts。但问题是对于现有行,这个新列(ts)的值是 00:000:000 不是当前时间。
PS:当我添加新行或更新任何现有行时,ts 会更新为当前时间戳。
为什么默认 current_timestamp/now() 不适用于现有行?
编辑: 我可以运行一个简单的更新 SQL 来将现有行更新到当前时间。但我是数据库中的新手,我正在尝试知道是否可以使用默认值更新现有行。
【问题讨论】: