Mysql数据库,表中有中文时,select出来好多问号(?)的解决方法
在QQ群里问了一些高手,同时参考了这篇文章:http://huangyunbin.iteye.com/blog/1113983,终于把这个问题搞定了。
首先,我用的是zip包的Mysql,直接解压使用的,网上说修改my.ini或者my.cnf在我机器上根本就找不到。但是my.ini这个东西是可以自己添加的。将mysql目录中的my-default.ini文件复制一份(原来的模板还是留一份不要乱动的好),重命名为my.ini。打开my.ini,在最后添上如下两行:
[mysql]
default-character-set=utf8
保存。同时要检查 ./data/performance_schema目录下的db.opt文件中有这样两行:
default-character-set=utf8
default-ollation=utf8_chinese_ci
之后是在数据库里进行设置。在mysql中输入
mysql> show variables like ''char%'';
可以看到我的数据库中字符集是酱婶的:

遵照大部分网友的建议,除了filesystem那个binary不动,其它全部改成utf8好了。
MYSQL>set character_set_client = 'utf8';
MYSQL>set character_set_connection = 'utf8';
MYSQL>set character_set_database = 'utf8';
MYSQL>set character_set_results= 'utf8';
MYSQL>set character_set_server='utf8';
OK。可以再次执行show variables like ''char%'';查看修改结果。现在字符集都是UTF-8了。
最后一步,要修改之前乱码的表,将字符编码也修改为UTF-8:
MYSQL>alter table 表名 modify 列名 字段类型 character set utf8;
这样就完成啦。再select一下之前的表,中文是不是都变过来了?
Mysql数据库,表中有中文时,select出来好多问号(?)的解决方法的更多相关文章
- mysql插入表中的中文显示为乱码或问号的解决方法
版权声明:本文为博主原创文章,未经博主允许不得转载. 今天在做ssh的博客项目时发现mysql数据库中的中文显示为问号,网上查阅了很多资料,都不是很全,所以我总结一下,供大家参考和自己复习. 1.我的 ...
- VC连接mysql数据库错误:libmysql.lib : fatal error LNK1113: invalid machine 解决方法
VC连接MySQL的配置过程在上一篇博文中,不过当你设置好,以为万事大吉的时候,运行却出现这个错误:libmysql.lib : fatal error LNK1113: invalid machin ...
- mysql数据库表字段使用DESC等关键字报错及解决方法
<!-- desc是MySQL数据库的关键字,作为字段名直接使用会报错 --><sql id="Base_Column"> id,mol,ip,port,n ...
- IDEA下搜狗输入法输入中文时卡着不动的参考解决方法
在IntelliJ IDEA工具的java编辑窗口,给代码增加注释时发现,输入中文时,搜狗输入法界面不动,一直卡着,如图: 我想输入“根据”两个字,但搜狗输入法界面一直卡着不刷新,导致都不知道自己输 ...
- MySQL数据库表中有usage字段名后的后果
一个很奇怪的42000的错误,折腾了我一晚上.... 我的系统是Spring + SpringMVC + MyBatis结构, 数据库的mapper以及model等文件都是用MyBatisGenera ...
- 使用solr的DIHandler 构建mysql大表全量索引,内存溢出问题的解决方法
solr官方给出的解决方式是: DataImportHandler is designed to stream row one-by-one. It passes a fetch size value ...
- MySQL数据表中有自增长主键时如何插入数据
原文链接:https://blog.csdn.net/RuobaiMEN/article/details/79794199 MySQL数据库表中有自增主键ID,当用SQL插入语句中插入语句带有ID列值 ...
- 对mysql数据库表的相关操作
虫师博客(Python使用MySQL数据库(新)): https://www.cnblogs.com/fnng/p/3565912.html 1.更改表的结构,增加一个字段放置新增的属性 alter ...
- PHP往mysql数据库中写入中文失败
该类问题解决办法就是 在建立数据库连接之后,将该连接的编码方式改为中文. 代码如下: $linkID=@mysql_connect("localhost","root&q ...
随机推荐
- mysql 优化常用语句
show status;//查询mysql各种状态: show variables like 'long_query_time';//慢查询的限定时间 set long_query_time=1;// ...
- HDU 5696 ——区间的价值——————【线段树、快排思想】
区间的价值 Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Subm ...
- T-SQL语句创建表
USE E_Market --指定当前所操作的数据库 GO CREATE TABLE 表名 ( BID int identity (1,1)NOT NULL, BNAME varch ...
- Consul 遇到的坑
均衡负载时调用的地址 spring.cloud.consul.discovery.service-name= 当A服务调用B服务时,可以转发到注册中心进行转发调用, 应该使用这个地址,这一点和eure ...
- mybatis动态参数(使用PreparedStatement插入#)和静态参数($)
1.使用#传递参数 #{}:被JDBC解析为PreparedStatement预编译语句,变量内容被当做一个整体变量,比如字符串,整形等. 2.使用$传递参数 ${}:纯粹是字符串替换,中间可以出现S ...
- java编写简单的语法分析预测程序
编译原理课程中,编了一个简单的语法分析预测程序,这个程序时根据固定的文法得到预测分析表,然后编写程序来判断表达式是否会正确推到出来. 前提是程序没有左递归符合LL(1)文法: 文法如下: E→TE' ...
- [Erlang]各种系统限制总结
Erlang本身对进程数,原子长度等没有限制,但为了提高性能和节省内存,总会在实际实现中和运行环境中作出一些限制. 1.进程数量 缺省情况下同时存在的最大Erlang进程数量不超过2^18=26214 ...
- C Primer Plus(第六版)中文版 中的错误1
#include<stdio.h> #include<stdlib.h> #include<string.h> #define TSIZE 45 struct fi ...
- ES6中的import()函数
import(specifier) 上面代码中,import函数的参数specifier,指定所要加载的模块的位置.import命令能够接受什么参数,import()函数就能接受什么参数,两者区别主要 ...
- ASP.NET 后台验证 TextBox 值是否为数字
记得最开始 using System.Text.RegularExpressions; Regex m_regex = new System.Text.RegularExpressions.Regex ...