mysql 无法插入中文

php中文网
发布: 2016-06-07 15:26:54
原创
1331人浏览过

MySQL数据库 默认编码已经是 utf8 了, default-character-set = utf8,可是向数据库中表中插入中文时,却老是出现 ....\xB5\xA5\xD1\xA1 for column...这样的错误,经过查阅网上类型的错误后,发现一个很奇妙的现象,接下来我们就来开始介绍。 一、在安装数

MySQL数据库默认编码已经是utf8了, default-character-set = utf8,可是向数据库中表中插入中文时,却老是出现 ....\xB5\xA5\xD1\xA1 for column...这样的错误,经过查阅网上类型的错误后,发现一个很奇妙的现象,接下来我们就来开始介绍。

一、在安装数据库时就设定字符集编码为utf8的环境下

1.在当前字符集编码为:

 

  1. Server characterset:    utf8  
  2.  
  3. Db      characterset:    utf8  
  4.  
  5. Client  characterset:    utf8  
  6.  
  7. Conn.  characterset:    utf8 

 

下创建数据库:

(1)插入中文数据,操作不能成功。

(2)修改字符集编码为:

 

  1. Server characterset:    utf8  
  2.  
  3. Db       characterset:   utf8  
  4.  
  5. Client  characterset:    gbk  
  6.  
  7. Conn.  characterset:    gbk 

 

插入中文数据,显示正常。

二、在安装数据库时就设定字符集编码为gbk的环境下

1.当前字符集编码是:

 

  1. Server characterset:    gbk  
  2.  
  3. Db      characterset:    gbk  
  4.  
  5. Client  characterset:   gbk  
  6.  
  7. Conn.  characterset:   gbk  

 

下创建数据,插入中文数据,操作正常,显示正常。

2.当前字符集编码为utf8:

 

  1. Server characterset:   gbk  
  2.  
  3. Db      characterset:    utf8  
  4.  
  5. Client  characterset:   utf8  
  6.  
  7. Conn.  characterset:   utf8 

 

3.当前字符集编码为utf8:

 

  1. Server characterset:    gbk  
  2.  
  3. Db      characterset:    gbk  
  4.  
  5. Client  characterset:   utf8  
  6.  
  7. Conn.  characterset:   utf8 

 

插入中文数据,操作不能执行。

结论:要想能向数据库正常插入中文,必须满足以下条件:

1.要把字符集设定为能支持中文的gbk或则utf8;

2.把数据库的Client Characterset和Conn. Characterset的字符集都设定为gbk;

根据上面的提示 ,我更改了:

 

  1. SET  character_set_client=gbk;  
  2.  
  3. SET character_set_connection=gbk

 

之后再尝试想数据库插入中文,这时没有出错,能插入可是查询出来是乱码。

最后再更改; 

 

  1. SET character_set_results=gbk

 

这样之后,所有的问题都解决了,能正常插入也能正常显示了。

 

另附查看字符集命令

5.查看字符集设置

mysql> show variables like 'collation_%';

mysql> show variables like 'character_set_%';

修改字符集

mysql> set character_set_client=utf8;
mysql> set character_set_connection=utf8;

mysql> set character_set_database=utf8;

mysql> set character_set_results=utf8;

mysql> set character_set_server=utf8;

mysql> set character_set_system=utf8;

mysql> set collation_connection=utf8;

mysql> set collation_database=utf8;

mysql> set collation_server=utf8;

相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号