为什么我的mysql无法用中文查询

首先,我用的是阿里云虚拟主机,cenOS + mysql 5.1.48的配置,php使用了5.5的版本(新人练手)。

设置数据库的时候,我已经选择默认字符是utf8了,然后数据库名称是系统默认的,表名我用了中文,列名用了中文。

后台使用php连接前也使用了,mysqli_query($cnn,"set names utf-8")语句。
数据库连接成功后,查询中涉及中文的,却都无法使用。

我又新建了个表,使用英文的表名和列名,尝试查询,结果成功了。

说明连接是没问题的。

后来上网爬了下设置,在数据库的命令模式,使用了:
SHOW VARIABLES LIKE 'character%';

SET character_set_connection = utf8 ;
SET character_set_database = utf8 ;
SET character_set_server = utf8 ;
SET character_set_client = utf8 ;
SET character_set_results = utf8 ;

SHOW VARIABLES LIKE 'collation_%';

SET collation_connection = utf8_general_ci;
SET collation_server = utf8_general_ci ;
SET collation_database = utf8_general_ci;

alter database chinesefirst_onlinetesting character set utf8;

以下命令都试过了,结果还是不行,不知道什么原因呢?

当前问题共有如下(1)个解决方案
  • proinsightio
    proinsightio

    是不是php的编码是gbk的?

上一篇:虚拟主机如何配置.htaccess文件以实现URL重写
下一篇:windows虚拟主机网站后台访问不了