我有 table :
CREATE TABLE t1 (
id INT(3)
, datetime DATETIME(6)
);
我想向带有小数秒的日期时间列添加默认值:
ALTER TABLE 't1'
CHANGE 'datetime' 'datetime'
DATETIME DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6)
我收到错误消息 #1064:
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 ''t1' CHANGE 'dt' 'dt' DATETIME DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TI' at line 1
最佳答案
你需要使用。
没有表名和列名周围的引用。
我在日期时间周围使用了反引号,因为日期时间是 MySQL 中的关键字。
而且您忘记了 DATETIME 需要像 DATETIME(6) 那样定义小数秒
ALTER TABLE t1
CHANGE `datetime` `datetime`
DATETIME(6) DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6)
关于mysql - 错误 #1064 添加带小数秒的 MySql 日期时间默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47309015/