Tag: mysql error 1067

将NOW()设置为datetime数据types的默认值?

我在表用户中有两列,分别是由datetime数据types组成的registerDate and lastVisitDate 。 我想做以下事情。 设置registerDate默认值为MySQL NOW() 将lastVisitDate默认值设置为0000-00-00 00:00:00而不是默认使用的null。 由于该表已经存在,并有现有的logging,我想使用修改表。 我试过使用下面的两段代码,但都不起作用。 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中设置默认的date时间值为NOW()?