随笔分类 -  中文乱码问题

乱码问题
摘要:最近在登陆公司服务器上的数据库时,在命令行里执行查询语句时候得到的结果只要是中文,就全部是乱码,很让人头疼呀,查了些资料总结一下.作为自己以后的参考.MySQL的字符集支持(Character Set Support)有两个方面:字符集(Character set)和排序方式(Collation)。对于字符集的支持细化到四个层次:服务器(server),数据库(database),数据表(table)和连接(connection)。1.MySQL默认字符集:MySQL对于字符集的指定可以细化到一个数据库,一张表,一列。传统的程序在创建数据库和数据表时并没有使用那么复杂的配置,它们用的是默认的配 阅读全文
posted @ 2012-04-09 15:08 haoxx 阅读(355) 评论(0) 推荐(0)
查看mysql字符编码
摘要:通过 SHOW VARIABLES LIKE 'CHARACTER%' 可以查看MySQL字符集编码 阅读全文
posted @ 2012-04-06 18:23 haoxx 阅读(223) 评论(0) 推荐(0)
中文乱码问题
摘要:首先我们得知道Mysql是瑞典一家公司开发的,因此他的默认编码是lanti1,所以有人在查询数据库表的时候会遇到显示中文乱码的问题,比如说我用Myeclipse的data explorer去查看数据库表的时候就出现了乱码。究其原因是数据库传给他的编码和自身编码不一致,也就是说Mysql传过来的是lanti1编码的数据,我在Myeclipse接受时采用的是gbk,所以出现乱码。 我的解决办法是,先指定数据库的字符集,具体可以创建数据库时,为其指定,比如: create table kind( kind_id int(11) auto_increment, kind_name varchar(50 阅读全文
posted @ 2012-04-06 18:21 haoxx 阅读(615) 评论(0) 推荐(0)
MySQL GBK转utf8
摘要:导出: mysqldump -p my_database > my_database.sql转码: iconv -t utf-8 -f gb2312 -c my_database.sql > new.sql修改new.sql,增加一条sql语句 "SET NAMES utf8;"导入: mysql -h localhost -u root -p my_database < new.sql或者 cat new.sql | /usr/bin/mysql -uroot -ppasswd databasename####### latin1 to utf8icon 阅读全文
posted @ 2012-04-06 18:20 haoxx 阅读(1825) 评论(0) 推荐(0)
java程序向mysql中插入数据的中文乱码
摘要:现象: 用JDBC将中文字段插入MySQL数据库中,然后打开表发现,那些字段都是"??",或者是乱码.原因: 1.由于创建数据库时指定默认的编码方式为utf8。 2.Client端字符集为gbk. 3.进行jdbc链接时使用了不匹配的字符集。解决办法: 1.创建数据库时将数据库的缺省字符集指定为gbk。建议用工具(如phpmyadmin等) 2.修改Client默认字符集为gbk。windows下在mysql安装目录下找到my.ini,将里面的default-character-set=utf8改为default-character-set=gbk,然后重起mysql服务即 阅读全文
posted @ 2012-04-06 18:16 haoxx 阅读(1760) 评论(0) 推荐(0)