开发者社区> 问答> 正文

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

metoogo 2018-01-02 22:32:49 1138

首先,我用的是阿里云虚拟主机,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;

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

机器学习/深度学习 关系型数据库 MySQL 数据库连接 PHP 数据库
分享到
取消 提交回答
全部回答(1)
  • proinsightio
    2019-07-17 21:51:23

    是不是php的编码是gbk的?

    0 0
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

推荐文章
相似问题