MySQL数据库“局部”乱码
问题:“网页显示中午”与“数据库查看中文”总有一个是乱码,或者“网页中总有部分中文乱码”
装了PHPStudy之后,用alter修改过一次数据库的编码方式为utf8!当时的网页的编码显示是正常的,所以我就没有放在心上以为可以了!到后来才发现:网页显示中文的时候不是乱码的,但是在数据库查看中文的时候却是乱码的!还有更奇怪的是,我做一个电商网站的时候,发现一级菜单的中文显示“夏日服装”--“夏日”显示正常,“服装”乱码!实际上这个只是显示乱码,因为我用命令修改了它的显示编码方式之后,数据显示正常了,但是网页又不正常了;不修改,网页还是可以正常显示中文的!这个就令我头疼了现在问题解决了,总结一下记录,若有不准确,还请指教,谢谢!
解决:
1)思路:发生乱码的情况可能由以下几个情况引起:
(1)编辑文件保存时的编码方式与打开时的编码方式不一致--打开文件显示编码,但是我觉得应该是不影响文件运行的;
(2)文件显示设置的编码方式与创建数据库时候数编码方式不同--文件运行之后显示乱码或者数据库乱码
(3)文件显示设置和数据库设置的编码有部分不同--可能出现上述我出现的情况
【面对第一种情况:用原来的编辑器重新保存一次为utf8;第二种情况:用alter命令修改数据的编码方式,或者将数据库删了重新导入】
2)原理:
在MySQL数据库中默认的编码是Latin1,是不支持中文的,要支持中文就需要将数据库的默认编码方式修改为utf8或者gbk。
先查看一下数据库的编码方式情况:show variables like 'character%';显示如下【这个显示是我已经修改为utf8】:
或者使用:show variables like 'collation%';查看数据库编码
只要保证上面三个connection、database、server三个的编码方式一样就不会乱码了!
3)解决方法:
打开MySQL的配置文件:mysql.ini,修改两个地方:
default-character-set=xxx--修改数据库默认字符集编码方式,但是却并不包括数据库服务器编码方式【即不含:collation_server】
character-set-server=xxx--修改数据库服务器的编码方式
只需要将两者修改为一样的utf8或者gbk就可以了!【对于不同字符,utf8和gbk所占用的储存空间是不一样的,详情可谷歌】
对于数据库字符集编码方式的一些命令,大家可以看看博主“血色残阳专栏”的这篇文章,里面都有讲到!
转载于:https://www.cnblogs.com/SofuBlue/p/8051382.html
MySQL数据库“局部”乱码相关推荐
- springMVC保存数据到mysql数据库中文乱码问题解决方法
springMVC保存数据到mysql数据库中文乱码问题解决方法 参考文章: (1)springMVC保存数据到mysql数据库中文乱码问题解决方法 (2)https://www.cnblogs.co ...
- Mybatis插入MySQL数据库中文乱码
Mybatis插入MySQL数据库中文乱码 在dataSource.properties配置文件中设置useUnicode=true&characterEncoding=utf-8编码即可. ...
- PHP——PHP读取MySQL数据库中文乱码解决方案
问题描述 PHP读取MySQL数据库中文乱码 解决方案 静态页面 <head> <metahttp-equiv="Content-Type"content=&q ...
- php查询mysql数据库乱码_PHP怎样处理查询MySQL数据库中文乱码?_后端开发
PHP如何处理查询MySQL数据库中文乱码? 1.将MySQL数据库默许的编码是UTF-8: 2.在MySQL中建立表时,将字符集设置为UTF-8: 3.在PHP中查询数据之前,将数据库编码设置为UT ...
- django 操作MySQL 中文乱码_Django 连接mysql数据库中文乱码
版本:CentOS6.8 python3.6.4 django1.8.2 数据库pymysql 我使用的终端是CentOS终端,CentOS桌面版安装的pycham,windows使用Navicat连 ...
- matlab-JDBC操作MYSQL数据库中文乱码解决
JDBC连接MYSQL数据库,使用MATLAB读写中文数据出现乱码,是由于MYSQL本身的配置问题 试验数据库的编码为UTF8,操作系统为中文WINDOWS,即操作系统的编码是GBK,如果不对MYSQ ...
- python django mysql写入中文乱码_Django 连接mysql数据库中文乱码
版本:CentOS6.8 python3.6.4 django1.8.2 数据库pymysql 我使用的终端是CentOS终端,CentOS桌面版安装的pycham,windows使用Navicat连 ...
- mysql 数据库备份 乱码_再谈 MySQL 数据库备份恢复和乱码问题
在我转到wordpress之后第一个考虑的是它的数据库备份恢复问题,因为写bloger都知道,自己的blog记录的都是自己需要的宝贵的资料和文字,如果因为各种未知因素导致数据库崩溃或者空间商出了问题, ...
- linux mysql插入数据乱码_linux mysql数据库中文乱码
mysql中文乱码 mysql是我们项目中非常常用的数据型数据库.但是因为我们需要在数据库保存中文字符,所以经常遇到数据库乱码情况.下面就来介绍一下如何彻底解决数据库中文乱码情况. 1.中文乱码 1. ...
最新文章
- 多个Silverlight应用程序如何共享一个DomainService
- html 幻灯禁止上下滑动,幻灯片滑动Immersive Slider
- Spring Boot 入门之缓存和 NoSQL 篇(四)
- 关于Linux fontconfig 字体库的坑
- Spring3.1+Quertz1.8实现多个计划任务
- 电控无碳小车需要单片机吗_电控无碳小车的设计及研究
- 面向对象【day07】:新式类和经典类(八)
- Aurora-------在 MSOffice 内输入 LaTeX 公式的很好用插件
- android ion --system heap(个人理解,不确定完全对)
- 20200607每日一句
- 使用CODERUN部署阿里云KUBERNETES
- MATLAB 2016a安装
- win10 电脑桌面任务栏点击无反应
- matlab圆锥曲线,Matlab软件在高中数学圆锥曲线学习过程中应用.doc
- png图片转化为ico图标并保留透明背景方法
- php 新历转农历,PHP实现阳历转阴历的方法
- 3、可燃气体的爆炸极限
- 前端开发环境与最佳实践
- python 证书-python requests证书问题解决
- 电脑c盘变红满了的清理方法
热门文章
- SQLi LABS Less-20
- android 4 动画,[Android]开发App,你得知道这些4——动画
- 从发起请求到收到响应,各个阶段的时间损耗是怎么样的?
- iOS 如何使用 Block
- Windows Restart Manager 重启管理器
- 问题 B: 算术基本运算 山东科技大学 oj c语言
- VMware虚拟机中ubuntu的磁盘怎么扩容
- fabric8 java api,kubectl apply -f equivalent in fabric8 java api | 易学教程
- 下三角矩阵的逆矩阵_上三角或下三角矩阵的逆矩阵能否简便方法求出??只有主副对角线不为0的矩阵能否直接写出逆矩阵。...
- 三坐标测量圆直径_多台三坐标测量机联动测量方法的研究