MySQL创建表时使用CURRENT_TIMESTAMP报错

  • Post author:
  • Post category:mysql


使用Navicat运行SQL脚本的时候,

报错[Msg] Finished – Unsuccessfully,

为查明错误原因,把建表语句复制到Navicat上直接执行,发现错误[Err] 1067 – Invalid default value for ‘create_time’

定位到错误位置:

create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP

,

DEFAULT后面的DEFAULT CURRENT_TIMESTAMP。上

网搜了下CURRENT_TIMESTAMP

众所周知,MySQL的日期类型可以使用CURRENT_TIMESTAMP来指定默认值,
但是这个跟MySQL的版本及日期的具体类型有关,
只有5.6之后的版本才能使用CURRENT_TIMESTAMP作为DATETIME的默认值。

查看MySQL版本,

打开phpStudy->其他选项菜单->MySQL工具->点击 MySQL命令行

输入密码 回车

在这里插入图片描述

发现本地MySQL版本确实不对,升级!

PhpStudy升级 MySQL版本到5.7详细见:

https://blog.csdn.net/qq_38778882/article/details/84846148



版权声明:本文为qq_38778882原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。