zoukankan      html  css  js  c++  java
  • Mysql:Invalid ON UPDATE clause for 'createTime' column

    从高版本的mysql转储SQL文件,然后运行SQL文件到低版本的mysql:

    如果表中存在datetime字段,如下:

    运行SQL文件时,将出现如下错误:

    [Err] 1294 - Invalid ON UPDATE clause for 'createTime' column

    解决办法:将`createTime` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,语句中的ON UPDATE CURRENT_TIMESTAMP去掉即可。

    原因:高版本的mysql转储的sql文件中,datetime字段都如上图所示,但是低版本的mysql不认识ON UPDATE CURRENT_TIMESTAMP,所以报错。

    举一反三:

    1:如果低版本的mysql转储的sql文件,在高版本的mysql中运行是没有问题的。

    2:承接1,高版本的mysql再转储出来的sql文件中,datetime字段也是不带ON UPDATE CURRENT_TIMESTAMP的(即在低版本的MySQL中运行是没问题的)。

    3:承接1,如果在高版本的mysql中增加了datetime字段,则再转储出来的sql文件中,datetime字段是带ON UPDATE CURRENT_TIMESTAMP的(即在低版本的MySQL中运行是有问题的)。

  • 相关阅读:
    Python人工智能之路
    Flask最强攻略
    Flask最强攻略
    Flask最强攻略
    Flask最强攻略
    Flask最强攻略
    Flask最强攻略
    Flask最强攻略
    Flask最强攻略
    Flask最强攻略
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13302496.html
Copyright © 2011-2022 走看看