> 데이터 베이스 > MySQL 튜토리얼 > 今天遇到Mysql插入数据里有中文字符出现Incorrect string value_MySQL

今天遇到Mysql插入数据里有中文字符出现Incorrect string value_MySQL

WBOY
풀어 주다: 2016-06-01 13:32:15
원래의
1086명이 탐색했습니다.

bitsCN.com

今天遇到Mysql插入数据里有中文字符出现Incorrect string value的错误

 

背景:CMD里直接敲代码插入数据

 

提示的部分截取为:ERROR 1366 (HY000): Incorrect string value

 

百度了一下,说是编码问题,show variables like 'character%' 查看后,发现所有编码都为UTF8,并没有错

 

继续查原因,网上有人说是mysql的编码集的问题以下为原文:

 

"原来问题出在mysql上,mysql如果设置编码集为utf8那么它最多只能支持到3个字节的UTF-8编码,而4个字节的UTF-8字符还是存在的,这样一来如果你建表的时候用的utf8字符集出异常就理所当然了。

 

解决方法很简单,修改字段或者表的字符集为utf8mb4。比较蛋疼的是,字符集utf8mb4在mysql 5.5.3之后才支持。。。"

 

看他说的这些结果要升级才能修改,果断放弃,并且也感觉应该不是我遇到的问题。后来想了想,是不是在CMD里输入文字的编码的问题呢,试着先设置客户端命令的编码,再插入果然正确!然后百度搜索客户端编码相关的问题也发现有和我出现过同样问题的。

 

解决方法 :

 

set names gbk    //设置客户端的编码格式,也就是你敲入的是什么编码的,客户端会自动把你的命令转成UTF8,也就是数据库编码也还是UTF8 

 

或者在安装目录下找到 my.ini

 

把default-character-set=utf8 改成default-character-set=gbk;

bitsCN.com
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿