mysql 建表不能默认时间

CREATE TABLE Orders
(
OrderId int NOT NULL,
ProductName varchar(50) NOT NULL,
OrderDate datetime NOT NULL DEFAULT CURDATE(),
PRIMARY KEY (OrderId)
)

Error Code : 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(),
PRIMARY KEY (OrderId)
)' at line 5

MySQL不能在建表时用default curdate()指定字段默认值为当前日期,

所以一定要在插入或更新的时候指定一个日期或者用curdate()函数,

例如insert into 表 (字段) values (curdate()); 如果不指定一个时间,那就按照系统默认值也就是日期"0000-00-00"。

但是timestamp却可以默认 current_timestamp(),不过一个表只能有一个timestamp

猜你喜欢

转载自newslxw.iteye.com/blog/1507698
今日推荐