mysql用source导入sql脚本,中文报错ERROR 1366 (HY000)

背景:
在cmd窗口用source导入会报错,但是把sql放到工具中执行不会报错
报错信息:

ERROR 1366 (HY000): Incorrect string value: '\xC9\xCF\xBA\xA3\xD6\xA4...' for column 'c_agencyname' at row 1

1、查看数据库默认字符集

show variables like 'char%';
+--------------------------+----------------------------------------+
| Variable_name            | Value                                  |
+--------------------------+----------------------------------------+
| character_set_client     | utf8                                   |
| character_set_connection | utf8                                   |
| character_set_database   | utf8                                   |
| character_set_filesystem | binary                                 |
| character_set_results    | utf8                                   |
| character_set_server     | utf8                                   |
| character_set_system     | utf8                                   |
| character_sets_dir       | E:\mysql-5.7.34-winx64\share\charsets\ |
+--------------------------+----------------------------------------+

数据库默认字符集是utf8

2、查看建表语句

show create table application;

...
ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
...

建表是用utf8mb4字符集

3、发现是导出的脚本是gbk编码,要转换成utf-8 无bom的格式
建了两个库
gjzg_release,字符集utf8mb4。gjzg_release2,字符集utf8

create database gjzg_release default charset utf8mb4 collate utf8mb4_general_ci;
grant all privileges on gjzg_release.* to 'gjzg_release'@'%';

create database gjzg_release2 default charset utf8 collate utf8_general_ci;
grant all privileges on gjzg_release2.* to 'gjzg_release'@'%';

分别导入转换后的sql脚本都没问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值