600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > mysql查看表内容 很乱_mysql数据表字符混乱问题解决办法

mysql查看表内容 很乱_mysql数据表字符混乱问题解决办法

时间:2021-07-06 23:02:45

相关推荐

mysql查看表内容 很乱_mysql数据表字符混乱问题解决办法

因为不知道什么时候的原因,我们有一个数据库超级无赖的具有了无敌的特性:数据表的编码是Latin1-swXXXX什么的。而保存在里面的中文又是php强制以utf8保存在其中。因此,出了各种乱七八糟的怪里怪气的毛病。让我等对于MySQL这种数据库本就没有什么爱的人深感恶心。

因此,今日在研究之下终于解决此问题。再次说明,本文是把latin1转为utf8。

问题的核心还是在于要改变已有保存字符的混乱问题,最彻底和便捷的方法就是直接导出,然后再以对应所需的字符导入。

为了能够正确的导入,我们必须要确保导出的数据在你的文字编辑器下能够正常显示中文。对于我们这次的这个数据库,我们最终的导出语句是:

view plaincopy to clipboardPRint?

/usr/local/mysql/bin/mysqldump -p --opt --default-character-set=latin1 sends> /home/test/sends.sql

/usr/local/mysql/bin/mysqldump -p --opt --default-character-set=latin1 sends> /home/test/sends.sql

导出后你就自觉的先看看中文显示正不正常吧,如果不正常就回去改个编码继续导。。。。

如果正常,继续:

现在要准备导入,但是导入的工作之前有个预备工作要做,如果你之前只导出一个表。那修改你导出的文件中的这一行:

view plaincopy to clipboardprint?

/*!40101 SET NAMES latin1 */;

成为

/*!40101 SET NAMES utf8 */;

/*!40101 SET NAMES latin1 */;

成为

/*!40101 SET NAMES utf8 */;

如果不幸你导出的是整个有很多不同编码的数据表的数据库,ok。请使用替换工具把原来有的各种编码都替换成你要的目的编码。我这里原来有utf8和latin1,所以只需要把Latin1全部替换成utf8即可。

之后新建一个要导入数据的数据库:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。