为什么Mysql默认的字符集都是latin1
关注:151答案:2mip版
解决时间 -01-25 17:36
提问者旧梦已过期
-01-25 03:58
为什么Mysql默认的字符集都是latin1
最佳答案
二级知识专家清酒孤欢
-01-25 05:19
MySQL 乱码的根源是的 MySQL 字符集设置不当的问题,本文汇总了有关查看 MySQL 字符集的命令。包括查看 MySQL 数据库服务器字符集、查看 MySQL 数据库字符集,以及数据表和字段的字符集、当前安装的 MySQL 所支持的字符集等。
全部回答
1楼凊搽蒗囝
-01-25 06:52
修改默认字符集
1、最简单的修改方法,就是修改mysql的my.ini文件中的字符集键值,
如default-character-set=utf8
character_set_server=utf8
修改完后,重启mysql的服务,servicemysqlrestart
使用mysql>showvariableslike'character%';查看,发现数据库编码均已改成utf8
+--------------------------+---------------------------------+
|variable_name|value|
+--------------------------+---------------------------------+
|character_set_client|utf8|
|character_set_connection|utf8|
|character_set_database|utf8|
|character_set_filesystem|binary|
|character_set_results|utf8|
|character_set_server|utf8|
|character_set_system|utf8|
|character_sets_dir|d:"mysql-5.0.37"share"charsets"|
+--------------------------+---------------------------------+
2、还有一种修改字符集的方法,就是使用mysql的命令
mysql>setcharacter_set_client=utf8;
mysql>setcharacter_set_connection=utf8;
mysql>setcharacter_set_database=utf8;
mysql>setcharacter_set_results=utf8;
mysql>setcharacter_set_server=utf8;
mysql>setcollation_connection=utf8;
mysql>setcollation_database=utf8;
mysql>setcollation_server=utf8;
3、一般就算设置了表的默认字符集为utf8并且通过utf-8编码发送查询,你会发现存入数据库的仍然是乱码。问题就出在这个connection连接层上。解决方法是在发送查询前执行一下下面这句:
setnames'utf8';
它相当于下面的三句指令:
setcharacter_set_client=utf8;
setcharacter_set_results=utf8;
setcharacter_set_connection=utf8;
**补充:***
先把数据导出,把数据库转换完毕后再把数据导回数据库
***********
--
以上,希望对你有所帮助。
我要举报
如果感觉以上信息为低俗/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!
点此我要举报以上信息!
推荐资讯
大家都在看
如果觉得《mysql的字符集设置为什么_为什么Mysql默认的字符集都是latin1》对你有帮助,请点赞、收藏,并留下你的观点哦!