> 데이터 베이스 > MySQL 튜토리얼 > Mysql乱码终极解决方案_MySQL

Mysql乱码终极解决方案_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-06-01 13:40:55
원래의
976명이 탐색했습니다.

bitsCN.com
Mysql乱码终极解决方案  最近在Linux自带的Mysql数据库中执行了一个sql文件,在数据库中查询没有任何问题,可以看到中文数据,但是在JSP页面中显示时却出现了乱码,在spring的配置数据库的连接URL中,指定了编码“characterEncoding=UTF-8”,而且浏览器也是UTF-8的编码,为什么就会是乱码呢。最后得出结论,原来是Linux自带的数据库并不是UTF-8的编码,整理后,得到以下几种解决方案: 第一解决方法:  乱码问题简单说就是数据库写入读取,网页文件,网页显示时几个环节的编码不一致造成的。   乱码问题写入时:页面提取写入数据编码和写入数据库时编码不一致读取时:读取后所用编码与数据库写入时不一致显示时:编码与数据库读取后的数据不一致 很显然只有三者都统一才行:(以utf-8为例)
 1:页面提交数据编码utf-8(这也可以算是显示页面编码),2:数据库写入时编码:alter database db default character set ‘utf8’collate ‘utf8-general-ci’,3:数据库读取时所用编码:mysql_query(“set names ‘utf8’”);4:显示页面编码: 第二解决方法:  进入MYSQL命令行:mysql> alter database you_dbname default character set 'utf8';  mysql> SET character_set_client='utf8'; mysql> SET character_set_connection='utf8' mysql> SET character_set_results='utf8'  第三解决方法:  (暂时只针对MySQL 5.0.16 乱码问题处理办法,其他版本未测试。)1 设置phpMyAdmin     Language:Chinese simplified (zh-utf-8)  MySQL 字符集:UTF-8 Unicode (utf8)  MySQL 连接校对:gbk_chinese_ci 2 创建数据库时  整理设置成 gbk_chinese_ci 3 用SQL建立表中   ENGINE=MyISAM DEFAULT CHARSET=gbk;  ENGINE=InnoDB DEFAULT CHARSET=gbk AUTO_INCREMENT=40 ;   4 检查表结构中  varchar(100) 的整理属性为gbk_chinese_ci  其它类型的整理属性为空 5 代码中加上   $db->query("SET CHARACTER SET GBK");  Linux下需要,Windows下不需要
   这个相当于Connection Character Sets and Collations
  bitsCN.com

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