我有以下查询来设置列的默认值:

ALTER TABLE tableName ADD COLUMN testDate TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP;

但我在新插入的行中看到testDate列的0000-00-00 00:00:00
我想看看现在的日期和时间。
有人能解释为什么会发生这种事吗?

最佳答案

数据,您在INSERT查询中指定的,覆盖列的默认值,即如果没有为列设置数据,则默认值有效。
查看我的fiddle

09-20 11:18