我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Mysql 报“Finished with error”,该怎么及解决?

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Mysql 报“Finished with error”,该怎么及解决?

用了多年的Mysql,当用navicat导库时,偶尔会遇到“Finished with error”错误,
如下图:
在这里插入图片描述
下面是我结合工作经验,总结一下,将相应情况及解决方法提供给网友们:

情况1:导入的sql数据库脚本文件中日期字段内容包含零值,如’0000-01-01’、‘0000-00-00’,此时如果不方便修正日期字段的时间值,那么就需要修改MySQL的sql_mode的参数值NO_ZERO_IN_DATE和NO_ZERO_DATE,将其去掉。步骤如下:
1)在MySQL的bin⽬录下 mysql -h localhost -u root -p ,连接数据库
2)select @@sql_mode; 查看权限,可以看到有NO_ZERO_IN_DATE,NO_ZERO_DATE

3)去除NO_ZERO_IN_DATE,NO_ZERO_DATE,设置sql_mode的值为
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

命令:
set session sql_mode=‘ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION’;
然后提交:
commit;

4)重启MySQL,然后查看:
select @@sql_mode;
此时没有NO_ZERO_IN_DATE,NO_ZERO_DATE了。
见下图:
在这里插入图片描述
注意:关于NO_ZERO_IN_DATE与NO_ZERO_DATE的介绍,参见《MySQL的sql_mode的参数值NO_ZERO_IN_DATE和NO_ZERO_DATE总结》https://cdn.modb.pro/db/336144

情况2:当前Mysql版本过低,而sql源文件高于当前版本,比如Mysql5.7不支持utf8mb4_0900_ai_ci与utf8mb4_da_0900_ai_ci,而Mysql8.0支持,如果sql脚本是Mysql8.0生成的,那么当导入Mysql5.7时,会出现报“Finished with error”错误,那么出现这种情况,有二种方法,一是升级Mysql版本,二是修改sql文件,将其中的utf8mb4_0900_ai_ci与utf8mb4_da_0900_ai_ci替换成utf8mb4_unicode_ci或者utf8mb4_general_ci,当然这要与数据库的字符排序规则相匹配(此种方式只用于浏览查看数据,不建议用于生产环境)。

下面是Mysql8.0生成的sql文件,其中包含utf8mb4_0900_ai_ci的示例,见下图:
在这里插入图片描述

来源地址:https://blog.csdn.net/helloworldchina/article/details/128509815

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Mysql 报“Finished with error”,该怎么及解决?

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

nsis error报错该怎么解决

这篇文章给大家介绍nsis error报错该怎么解决,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。  用户使用电脑的过程中有时候会遇到一些报错,让人措手不及。例如有用户在安装或打开一些程序的过程中出现NSIS Erro
2023-06-04

The used command is not allowed with this MySQL version - 如何解决MySQL报错:该MySQL版本不允许使用该命令

这篇文章将详细介绍如何解决这个问题,并提供具体的代码示例。首先,让我们看看为什么会出现这个错误。当我们在使用MySQL版本较新的数据库时,某些特定的命令可能已经被弃用或移除了。这意味着我们无法再使用这些命令,否则就会得到上述错误提示。要解决
2023-10-21

启动MySQL报错:ERROR 2003 (HY000)怎么解决

ERROR 2003 (HY000) 是MySQL连接错误,可能由以下原因导致:1. MySQL服务器未启动:确保MySQL服务器已启动。2. MySQL服务器未监听正确的端口:MySQL默认使用3306端口。检查MySQL配置文件(my.
2023-08-28

MySQL ERROR 1045出现的原因及怎么解决

这篇文章主要介绍“MySQL ERROR 1045出现的原因及怎么解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“MySQL ERROR 1045出现的原因及怎么解决”文章能帮助大家解决问题。在命
2023-07-02

mysql数据库报错Error Code: 1172怎么解决

MySQL Error Code 1172 usually occurs when you try to execute a statement that references a non-existent table alias.To r
2023-08-19

编程热搜

目录