我知道对于DATETIME列你可以CURRENT_TIMESTAMP但是DATE列怎么样?我不需要小时,分钟和秒,而在尝试将CURRENT_TIMSTAMP设置为默认值时,我会收到错误消息。 感谢
答案 0 :(得分:1)
可以使用date
定义time
或default 0
类型列,但不能定义curdate()
或curtime()
。
根据Data Type Default Values上的文档:
数据类型规范中的DEFAULT值子句指示列的默认值。除了一个例外,默认值必须是常量;它不能是一个功能或表达。这意味着,例如,您不能将日期列的默认值设置为函数的值,例如NOW()或CURRENT_DATE。
答案 1 :(得分:0)
on update CURDATE();
尝试此操作
ALTER TABLE `tablename`
CHANGE `tablename` `tablename`timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP