我有桌子:
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'
答案 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)