Heim > Datenbank > MySQL-Tutorial > mysql 无法插入中文

mysql 无法插入中文

WBOY
Freigeben: 2016-06-07 15:26:54
Original
1191 Leute haben es durchsucht

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;

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage