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

MySQL的“SET NAMES x”字符集问题分析

MySQL的字符集问题。Windows下可通过修改my.ini内的
CODE:
# CLIENT SECTION
[mysql]
default-character-set=utf8
#
SERVER SECTION
[mysqld]
default-character-set=utf8

两个字段来更改数据库

默认字符集。第一个是客户端默认的字符集,第二个是服务器端默认的字符集。假设我们把两个都设为utf8,然后在MySQL Command Line
Client里面输入“show variebles like“character_set_%”;”,可看到如下字符:
character_set_client 
 latin1
character_set_connection    latin1
character_set_database 
   utf8
character_set_results    latin1
character_set_server   utf8
character_set_system 
   utf8
其中的utf8随着我们上面的设置而改动。此时,要是我们通过采用UTF-8的PHP程序从数据库里读取数据,很有可能
是一串“?????”或者是其他乱码。网上查了半天,解决办法倒是简单,在连接数据库之后,读取数据之前,先执行一项查询“SET NAMES
UTF8”,即在PHP里为
mysql_query("SET NAMES UTF8");
即可显示正常(只要数据库里
信息的字符正常)。为什么会这样?这句查询“SET NAMES UTF8”到底是什么作用?
到MySQL命令行输入“SET
NAMES UTF8;”,然后执行“show variebles
like“character_set_%”;”,发现原来为latin1的那些变量“character_set_client”、
“character_set_connection”、“character_set_results”的值全部变为utf8了,原来是这3个变量在捣
蛋。查阅手册,上面那句等于
看看这3个变量的作用:
信息输入路径:client→connection→server;

息输出路径:server→connection→results。
换句话说,每个路径要经过3次改变字符集编码。以出现乱码的输出为
例,server里utf8的数据,传入connection转为latin1,传入results转为latin1,utf-8页面又把results
转过来。如果两种字符集不兼容,比如latin1和utf8,转化过程就为不可逆的,破坏性的。所以就转不回来了.
但这里要声明一
点,“SET NAMES UTF8”作用只是临时的,MySQL重启后就恢复默认了。
接下来就说到MySQL在服务器上的配置问题了。岂不是我
们每次对数据


相关文档:

连接Mysql数据库小常识

1.加载mysql驱动包Properties->java Build Path->Libraries->Add External JARs...
2.Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/数据库名?user=root&password=密码"); ......

一些简单的mysql SQL语句备忘

放在这里备忘,老是忘记怎么写。
mysql> create database book;
mysql> use book;
Database changed
mysql> create table email_message(key_mail_messages INTEGER,
-> date_created VARCHAR(19),
-> date_updated varchar(19),
-> date_email varchar(19),
-> addr_from va ......

apache的静态/动态编译在apache+php+mysql的应用

apache的静态/动态编译在apache+php+mysql的应用
我想大家有不少都成功实现apache+php+mysql,网上的文章也有不少,但我发现不少文章都是抄来抄去,并且
没有说明白编译的方式,有的索性apache1.3的编译方法原封不动的搬过来套在apache2.0,显然误导一些菜鸟 !
我今天就以apache+mysql+php说一下静态编译和DSO动态编 ......

Red Hat 下 安装 Apache Mysql PHP

准备
ls  /usr/local/src   //  显示文件列表
ls  | wc -l    //  查看当前文件目录下文件的个数
gcc -v   // 查看编译工具是否存在
rpm -qa|grep -i  xxxx  // 查看系统中是否已经安装了某软件的相关软件包
rpm -e --nodeps xxxx // 卸载软 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号