2 csdndeusername csdndeusername 于 2016.04.15 11:25 提问

创建含有日期的表的时候报错,以至于无法创建成功

我创建表test,有两个字段id,ctime;
CREATE TABLE test(
id INT PRIMARY KEY,
ctime DATETIME NOT NULL DEFAULT CURDATE()
);
错误码: 1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'curdate()
)' at line 3

4个回答

AugustLeo_cheng
AugustLeo_cheng   2016.04.15 11:31

ctime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP

csdndeusername
csdndeusername 你说的和ctime datetime not null default now()的效果是一样的,但我想只获取其中的日期,并不包含时间,这样的话该咋弄呢?
一年多之前 回复
licang2991
licang2991   2016.04.15 11:31

ctime date 跟上约束条件(比如非空或 是系统时间)ctime datetime 没意义 再者说了

u010787336
u010787336   2016.04.15 11:46

mysql 1064错误
该错误一般出现在表名或者字段名设计过程中出现了mysql关键字导致的。

u012582337
u012582337   2016.04.16 10:42

是你的函数问题,你可以换一个,用这个DEFAULT CURRENT_TIMESTAMP,或者now()。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!