mysql中文字符支持设置

mysql中文字符支持设置

mysql数据库中,使用的是latin字符集,所以无法正常的支持中文字符,中文在数据库中显示为乱码号。为了让mysql可以正常使用中文,尤其是当使用jsp连接mysql的时候,我们需要使用gbk的字符集,因此我们要对mysql进行以下设置,以便其有效的支持中文:
 
1.修改my.cnf文件
my.cnf文件是mysql的配置文件,我们可以从mysql的安装目录根据其自带模板来
建立
#cp /usr/local/mysql/support-files/my-huge.cnf  /etc/my.cnf
#vi /etc/my.cnf

在此文件中相应位置加入
default-character-set = gbk
########################
[client]
default-character-set = gbk
[mysqld]
default-character-set = gbk

#########################
修改结束以后,保存,然后使用客户端登录
#mysql -u root -p 

在客户端中输入
>status;
显示的数据中如果出现:
Server characterset:    gbk
Db     characterset:    gbk
Client characterset:    gbk
Conn.  characterset:    gbk

则表示修改成功。
2.建立库表时指定gbk字符集
在建立库表的时候我们需要指定gbk字符集
建立数据库:
CREATE DATABASE dbname DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci
建立数据表
CREATE TABLE username(
`id` int( 3 ) NOT NULL AUTO_INCREMENT ,
`username` varchar( 30 ) NOT NULL ,
`password` varchar( 30 ) NOT NULL ,
`rpss` varchar( 30 ) NOT NULL ,
`wenti` varchar( 30 ) NOT NULL ,
`daan` varchar( 30 ) NOT NULL ,
PRIMARY KEY ( `id` , `username` , `password` , `rpss` , `wenti` , `daan` )
) ENGINE = MYISAM DEFAULT CHARSET = utf8; 《----这里需要指定字符
 
建立好以后,在客户端中使用:
>show cereate table tablename;
如果最后一行显示gbk,则表示成功
3.修改jdbc驱动
jsp连接mysql需要使用jdbc驱动,在使用的时候,我们需要设置好字符集
String user="root";
String password="123";
String url="jdbc:mysql://localhost:3306/dbname?useUnicode=true&characterEncoding=gbk"
Class.forNname("com.mysql.jdbc.Driver");//装载驱动类;
Connection con=DriverManager.getConnection(url,user,password);//取得连接
其中dbname为你数据库的名字,url中的gbk即为使用的字符集
 
4.PHP设置字符
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<?php
echo "测试显示字符是否为中文";
$cc=mysql_connect("127.0.0.1","root","");
mysql_select_db("zhmj".$cc);
$sql="SELECT * FROM `zhmj`.`test`";
mysql_query("SET NAMES UTF8");
$result=mysql_query($sql);
print_r($row=mysql_fetch_array($result));
?>
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章