我有一个名为users的表格中有两个列registerDate和lastVisitDate
,它们都是datetime数据类型。我想要做以下操作:
- 将registerDate默认值设置为MySQL NOW()
- 将lastVisitDate默认值设置为
0000-00-00 00:00:00
,而不是默认使用null。
因为该表已经存在并且有现有记录,所以我想使用"修改表"方法。我尝试了下面这两段代码,但都不起作用。
ALTER TABLE users MODIFY registerDate datetime DEFAULT NOW()
ALTER TABLE users MODIFY registerDate datetime DEFAULT CURRENT_TIMESTAMP;
我遇到了错误:ERROR 1067 (42000): Invalid default value for 'registerDate'
在MySQL中,是否可以将默认的日期时间值设置为NOW()?
ALTER TABLE users MODIFY dateTime TIMESTAMP DEFAULT CURRENT_TIMESTAMP
。你在两次尝试中都没有定义字段的数据类型。 - Shakti SinghDATE
类型应该能够使用默认值NOW()
。 - AbcAeffchen