首页 数据库 mysql教程 mysql 无法插入中文

mysql 无法插入中文

Jun 07, 2016 pm 03:26 PM
mysql 中文 插入 数据库 编码 默认

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;

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Debian Strings能否兼容多种浏览器 Debian Strings能否兼容多种浏览器 Apr 02, 2025 am 08:30 AM

“DebianStrings”并非标准术语,其具体含义尚不明确。本文无法直接评论其浏览器兼容性。然而,如果“DebianStrings”指的是在Debian系统上运行的Web应用,则其浏览器兼容性取决于应用本身的技术架构。大多数现代Web应用都致力于跨浏览器兼容性。这依赖于遵循Web标准,并使用兼容性良好的前端技术(如HTML、CSS、JavaScript)以及后端技术(如PHP、Python、Node.js等)。为了确保应用与多种浏览器兼容,开发者通常需要进行跨浏览器测试,并使用响应式

Beego ORM中如何指定模型关联的数据库? Beego ORM中如何指定模型关联的数据库? Apr 02, 2025 pm 03:54 PM

在BeegoORM框架下,如何指定模型关联的数据库?许多Beego项目需要同时操作多个数据库。当使用Beego...

在Go编程中,如何正确管理Mysql和Redis的连接与释放资源? 在Go编程中,如何正确管理Mysql和Redis的连接与释放资源? Apr 02, 2025 pm 05:03 PM

Go编程中的资源管理:Mysql和Redis的连接与释放在学习Go编程过程中,如何正确管理资源,特别是与数据库和缓存�...

Go语言函数参数传递:为什么指针变量在函数内修改后外部却不变? Go语言函数参数传递:为什么指针变量在函数内修改后外部却不变? Apr 02, 2025 am 09:21 AM

Go语言中函数参数传递的疑惑:指针变量为何未被修改?本文将针对一个Go语言程序中关于指针变量赋值的问题�...

使用 sql.Open 时,DSN 传空为什么不报错? 使用 sql.Open 时,DSN 传空为什么不报错? Apr 02, 2025 pm 12:54 PM

使用sql.Open时,DSN传空为什么不报错?在Go语言中,sql.Open...

高并发下单如何避免数据库瓶颈? 高并发下单如何避免数据库瓶颈? Apr 02, 2025 am 09:03 AM

高并发环境下的订单处理:如何避免数据库瓶颈?在电商系统中,下单操作往往涉及到减库存和更新用户余额等...

如何选择MySQL和Redis数据一致性的方案:延迟双删与先改数据库再删缓存的区别与适用场景? 如何选择MySQL和Redis数据一致性的方案:延迟双删与先改数据库再删缓存的区别与适用场景? Apr 02, 2025 am 11:57 AM

关于MySQL和Redis数据一致性的两种方案:延迟双删与先改数据库再删缓存在处理MySQL和Redis的数据一致性问题时,�...

如何利用MySQL的唯一索引限制用户在特定时间段内只能插入一条数据? 如何利用MySQL的唯一索引限制用户在特定时间段内只能插入一条数据? Apr 02, 2025 pm 12:15 PM

根据时间段限制数据库插入操作的解决方案在日常开发中,可能会遇到需要限制用户在特定时间段内只能执行一...

See all articles