错误#1064使用小数秒添加MySql datetime默认值

时间:2017-11-15 13:44:07

标签: mysql datetime timestamp default-value

我有桌子:

CREATE TABLE t1 (
    id INT(3)
  , datetime DATETIME(6)
);

我想使用小数秒将默认值添加到datetime列:

ALTER TABLE 't1'
CHANGE 'datetime' 'datetime'
DATETIME DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6)

我收到错误消息#1064:

  

1064 - 您的SQL语法出错;检查手册   对应于您的MySQL服务器版本,以便使用正确的语法   ''t1'附近'更改'dt''dt'日期默认值CURRENT_TIMESTAMP(6)开启   在第1行更新CURRENT_TI'

1 个答案:

答案 0 :(得分:0)

你需要使用。
没有围绕表名和列名的qoutes。
我在datetime时使用了反引号,因为datetime是MySQL中的关键字 你忘记了DATETIME需要像DATETIME(6)那样定义小数秒

ALTER TABLE t1
CHANGE `datetime` `datetime`
DATETIME(6) DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6)