MySQL命令行插入中文是乱码,同时报错

本文介绍在Windows环境下,使用PowerShell操作MySQL时遇到的中文数据插入错误及显示乱码的问题。通过修改my.ini文件中的字符集设置为utf8mb4,解决了中文数据的插入问题,并调整命令行编码至gbk,确保中文内容正确显示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天学习MySQL操作时遇到了两个问题(windows环境下,powershell):

问题

  1. 命令行插入中文数据时,报错:
Incorrect string value: '\xF0\x9F...' for column 'XXX' at row 1
  1. 命令行插入数据以后,查看结果,中文内容时乱码

解决办法

  1. 因为utf8的编码可能是两个字节,三个字节,四个字节,但是MySQL的utf8最多三个字节,导致数据插入失败报错,所以需要做出如下修改:
    打开自己的my-default.ini(或者my.ini)修改
character-set-server=utf8mb4

default-character-set=utf8mb4

修改后重启MySQL服务,然后可以进行中文内容插入了。

  1. 查看结果时出现中文乱码,是因为,我们MySQL编码使用的是utf8格式,但是在cmd与powershell中使用的却是gbk,因此需要修改一下。
set names gbk;

然后可以正常查看了

第3篇实践记录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值