易截截图软件、单文件、免安装、纯绿色、仅160KB

Mysql中文乱码问题之分析

Mysql中文乱码问题
之前被mysql中总是出现中文乱码搞得云里雾里,在网上也搜了些相关资料,可结果更让我觉得字符集的转换是相当复杂,甚至有了抵触心理,不过还好在最后搜到几篇经典的文章,经过研读总算明白过来!好文章,不敢独享,现将文章稍作整理与大家分享。
字符集基本概念:
http://home.phpchina.com/space.php?uid=57965&do=blog&id=181970
 
mysql中文乱码原因剖析:
对编程有影响的主要是客户端字符集和数据库字符集,数据库中常用的操作就是保存数据和读取数据,在这个过程中,乱不乱码和数据库字符集貌似没有什么关系。我们只要保证写入时选择的字符集和读取时的选择的字符集一致,即只需保证两次操作的客户端字符集一致即可。在MySQL的客户端上执行一次查询过程一般是,在客户端的提示符后面输入一条SQL语句,回车,然后终端显示出查询的结果。这个过程中,只有终端和三个MySQL的系统变量指定了正确的字符集,才能保证我们将一个正确的SQL语句送到服务器,然后服务器返回正确的结果,并且在终端正确显示。三个MySQL的系统变量是:
1. character_set_client,终端字符集,告诉Server客户端提交的SQL语句的编码格式 
2. character_set_connection,连接字符集,是服务器翻译SQL语句时用到的编码格式
3. character_set_results,返回的结果集的字符集,是服务器返回结果集之前把结果集转换成的编码格式 。
在MySQL终端通过执行命令 show variables like ‘char%’ 可以查看这几个变量的值。这三个变量通常都设定为同一种字符集,用命令set names [charset name]就可以修改这三个变量的值。一般来说,只要你设定了能够表示你的数据的字符集,你查询的结果都可以在终端正确显示。
 
举个例子:使用的表t1是utf8编码,表中的字段c1继承了这个编码,表创建如下
mysql> create table t1 ( c1 text not null ) character set utf8;
用的字符是汉字“范”,gbk编码为B7 B6,utf8编码为E8 8C 83
用下面的SQL语句插入数据
mysql> insert into t1 values( ‘范’);
a)如果终端设置为utf8,并且执行了 set names utf8,那么插入到数据库中的就是“范”这个字的utf8编码,这个过程中MySQL不需要做编码转换。写入数据库的内容可以通过执行 select hex( c1 ) from t1 得到数据的十六进制编码来验证。
b)如果终端设置为 utf8,并且执行了set names g


相关文档:

MySQL语句优化的基本原则

MySQL语句优化的基本原则: 
◆1、使用索引来更快地遍历表。 
缺省情况下建立的索引是非群集索引,但有时它并不是最佳的。在非群集索引下,数据在物理上随机存放在数据页上。合理的索引设计要建立在对各种查询的分析和预测上。一般来说: 
a.有大量重复值、且经常有范围查询( > ,< ,> =,< ......

简单的PHP操作Mysql类

<?php
/*
 * 名称 : MySQL数据库基本操作
 * 作者 : pjx
 * 版本 : v 2010/02/25 v 1.0
 * 说明 : 该类用于对MySQL做一些简单的操作
 * 示例 :
 * 实例 => $db = new DB_MYSQL($database),打个$database数据库
 * 查询数据库 => $db->query($sql_str),查询$sql_st ......

配置MySQL主从复制(Replication)


配置MySQL主从复制(Replication)
标签:知识/探索 mysql复制 replication mysql备份 
分类:数据库
MySQL支持单向、异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器。主服务器将更新写入二进制日志文件,并维护日志文件的一个索引以跟踪日志循环。当一个从服务 ......

SSH+MySQL开发中的中文乱码问题

一、表单提交乱码解决方法
    表单中含有中文提交乱码,对于字母和数字则不会乱码,我选用的字符集utf-8(以下同)。
 1、在apache-tomcat-6.0.18\webapps\examples\WEB-INF\classes\filters目录下找到文件SetCharacterEncodingFilter.java 和RequestDumperFilter.java文件,并将其复制到项目src ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号