我在练习数据类型(日期)和MySQL日期函数。因此,仅仅为了练习,我试图创建一个表并使用两个(以前的)表示“x”列。如果有可能的话,我也想用其他日期函数来做。
所以,
CREATE TABLE testing (
idtesting INT NOT NULL AUTO_INCREMENT KEY,
testingdate date NOT NULL DEFAULT CURDATE()
) ENGINE MyISAM;
如果我没错,日期数据类型需要: YYYY-MM-DD 和 curdate()返回 YYYY-MM-DD
但是,我收到了这个错误
ERROR 1064 (42000): 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()
) ENGINE MyISAM' at line 3
即使我搜索了ERROR 1064(42000),我也找不到解决方案。
任何人都可以帮助我吗?
是的,我想混合数据类型和日期函数来学习。 非常感谢!
答案 0 :(得分:1)
MySQL非常关注设置默认的datetime / timestamp列。不允许使用当前日期 - 时间戳或日期时间(取决于MySQL的版本)。
您可以阅读documentation中的默认值。
(注意:仅在5.6.5之后才允许初始化datetime
列。在早期版本中,只能初始化timestamp
列。)