我有以下查询来设置列的默认值:
ALTER TABLE tableName ADD COLUMN testDate TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP;
但我在新插入的行中看到testDate列的
0000-00-00 00:00:00
。我想看看现在的日期和时间。
有人能解释为什么会发生这种事吗?
最佳答案
数据,您在INSERT
查询中指定的,覆盖列的默认值,即如果没有为列设置数据,则默认值有效。
查看我的fiddle。
我有以下查询来设置列的默认值:
ALTER TABLE tableName ADD COLUMN testDate TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP;
0000-00-00 00:00:00
。最佳答案
数据,您在INSERT
查询中指定的,覆盖列的默认值,即如果没有为列设置数据,则默认值有效。
查看我的fiddle。