解决MySQL乱码问题:
1.检测字符集问题的一些手段
在MySQL的命令行下输入
1). SHOW CHARACTER SET;
2). SHOW COLLATION;
3). SHOW VARIABLES LIKE 'character%';(*)
4). SHOW VARIABLES LIKE 'collation%';
默认情况下,MySQL的字符集是latin1(ISO_8859_1),如何查看在上面我们已经给出了相关命令。
2.下面是通过命令行设置字符集
SET character_set_client = utf8 ;
SET character_set_connection = utf8 ;
SET character_set_database = utf8 ;
SET character_set_results = utf8 ;
SET character_set_server = utf8 ;
SET collation_connection = utf8 ;
SET collation_database = utf8 ;
SET collation_server = utf8 ;
注意:此方法的修改只是临时的,如果关闭客户端客户端后又会恢复默认设置。
3.下面可以通过修改MySQL的配置文件my.ini一劳永逸的解决通过程序向MySQL注入中文是显示乱码的问题
my.ini文件位于MySQL安装的主目录下:
(一)修改Client
找到如下的位置
[client]
port=3306
[mysql]
default-character-set=latin1
将latin1改为utf8/*注意:MySQL中的是utf8,不要写成utf-8*/
(二)修改mysqld
# The default character set that will be used when a new schema or table is
# created and no character set is defined
default-character-set=latin1
# The default storage engine that will be used when create new tables when
default-storage-engine=INNODB
将latin1修改为utf8,同时在default-storage-engine=INNODB下面配置上
character-set-server=utf8
collation-server=utf8_general_ci
此刻,所有工作已完成,保存my.ini文件,然后重启MySQL服务即可,查看字符集编码显示如下变配置成功,可以方便的存取中文字符。