【问题标题】:Date column with DEFAULT CURDATE() throw error带有 DEFAULT CURDATE() 的日期列抛出错误
【发布时间】:2018-09-05 17:41:11
【问题描述】:
CREATE TABLE tests(
id INT PRIMARY KEY AUTO_INCREMENT,
day DATE DEFAULT CURDATE());

这段代码给了我错误信息:ERROR 1064 (42000): You have an error in your SQL syntax;检查与您的 MySQL 服务器版本相对应的手册,了解在 'CURDATE() 附近使用的正确语法

我不明白为什么。它可以在没有 DEFAULT CURDATE() 的情况下工作

谁能解释一下为什么?

非常感谢!

【问题讨论】:

标签: mysql date


【解决方案1】:

curdate() 是日期时间函数,您将当前日期分配给日期变量

CREATE TABLE tests( id INT PRIMARY KEY AUTO_INCREMENT, `day` datetime DEFAULT now())

运行此查询

【讨论】:

  • 但是如果我只想要 DATE 类型呢?我根本不想要 HH:MM:SS 部分。
猜你喜欢
  • 2016-08-23
  • 1970-01-01
  • 1970-01-01
  • 2015-06-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-14
相关资源
最近更新 更多