日期:2014-05-16 浏览次数:20709 次
一开始按照博文http://www.linuxidc.com/Linux/2011-05/35404.htm的做法,设置ArmLinux,不行,继续找。。。
尝试多种解决方案,但大多数讲的都是Windows或Linux(ubuntu)的做法,说起来容易做起来难,看看我的经历吧。。。
1、windows下操作比较方便,先实现windows下mysql中文显示
按照http://www.linuxidc.com/Linux/2011-05/35404.htm的Windows解决方案,我实现的是utf8的字符集设置,没有问题,O(∩_∩)~,不过有点小插曲,就是4个汉字以上就显示乱码,那肯定是数据长度定义短了,修改。。。
mysql>desc table_name;
...
mysql>ALTER TABLE `test`.`acquisitions` CHANGE COLUMN `unit` `unit` VARCHAR(112) NULL DEFAULT NULL ;
测试
OK!
2、在ARM下,很纠结,明明按照方法做的,
1)在QT程序的main.cpp的main函数中QTextCodec```那三句:
2)在你的程序代码设置数据库后添加一句: db.exec("SET NAMES 'Latin1'"); //直接使用数据库的latin1编码
偏偏不行,可能是编译的ARM版的MySQL与ubuntu的不太一样,看看它的字符集吧:
查看MySQL当前的字符集设置:
mysql> show variables like 'character%';
+--------------------------+----------------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------------+
| character_set_client | gb2312 | &