mysql执行sql脚本报错ERROR 1366 (HY000) 解决
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,mysql执行sql脚本是有两种方式:方式1:在控制台下,进入mysql的bin目录,mysql -u user -p"password" -P 3308 -D testdb < d:\test\te
千家信息网最后更新 2026年11月02日mysql执行sql脚本报错ERROR 1366 (HY000) 解决mysql执行sql脚本是有两种方式:
方式1:
在控制台下,进入mysql的bin目录,
mysql -u user -p"password" -P 3308 -D testdb < d:\test\test.sql
这里的test.sql是待执行的sql脚本,记得要写绝对路径。
方式2:
进入mysql的执行命令行下,用source命令执行:
Mysql>source d:\test\test.sql
或
Mysql>\. d:\test\test.sql
问题:
用方式1执行sql脚本时,报错如下:

网上查了这个错误,是字符集方面的。但是,当我尝试把test.sql里的sql语句分开一条一条在Navicat客户端上执行,或者用以下方式执行:
mysql -u user -p"password" -P 3308 -D testdb -e "update ** set col1="中文";"
发现全部都执行成功了。
这说明sql脚本本身自己是没有问题的。所以问题可能出在sql脚本的编码格式上。
经过检查发现,因为我的sql脚本是用txt编写,保存时默认编码格式是ansi。于是重新保存,如下:

选择编码格式为utf8。再次执行,成功。
注:如果待执行的sql脚本中含有中文字符,需要注意脚本的编码格式。
方式1:
在控制台下,进入mysql的bin目录,
mysql -u user -p"password" -P 3308 -D testdb < d:\test\test.sql
这里的test.sql是待执行的sql脚本,记得要写绝对路径。
方式2:
进入mysql的执行命令行下,用source命令执行:
Mysql>source d:\test\test.sql
或
Mysql>\. d:\test\test.sql
问题:
用方式1执行sql脚本时,报错如下:

网上查了这个错误,是字符集方面的。但是,当我尝试把test.sql里的sql语句分开一条一条在Navicat客户端上执行,或者用以下方式执行:
mysql -u user -p"password" -P 3308 -D testdb -e "update ** set col1="中文";"
发现全部都执行成功了。
这说明sql脚本本身自己是没有问题的。所以问题可能出在sql脚本的编码格式上。
经过检查发现,因为我的sql脚本是用txt编写,保存时默认编码格式是ansi。于是重新保存,如下:

选择编码格式为utf8。再次执行,成功。
注:如果待执行的sql脚本中含有中文字符,需要注意脚本的编码格式。
脚本
方式
格式
编码
问题
成功
命令
字符
中文
再次
字符集
客户
客户端
方面
用以
目录
语句
路径
错误
开一
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
湖北九亚互联网络科技有限公司
互联网科技有限公司经营范围
互联网中国科技
科技类互联网
中国 科技 互联网
国外互联网科技网站
中盈科技互联网信息有限公司
昭通互联网科技选哪家
移动互联网年度科技创新
民营互联网公司国防科技
内蒙古九一互联网科技
高科技互联网发展前景如何
富国互联网金融科技混合基金
广州有谷有贝互联网科技有限公司
东营紫格互联网科技
互联网高科技行业有哪些企业
互联网科技手抄报图片
河南商务圈互联网科技有限公司
青岛互联网科技园
优雇互联网科技有限公司
互联网 科技创业
滨湖区互联网智能科技产品供应
互联网科技产品
中国的互联网科技企业的崛起
顶级互联网科技成果有哪些
青岛科技大学互联网大赛研究生
广州市恰铎互联网科技有限公司
35岁以上互联网科技行业
郑州欣桑互联网科技有限公司
互联网科技企业商标注意事项