近日使用qt做一个程序,使用ODBC连接sql server数据库,在向数据库插入中文数据时一切正常,在数据库里中文显示正常
query.exec(QString(“insert into Name(Num,Name) values(’%1’,’%2’)”).arg(1).arg(ui->lineEdit_Name->text()));
然后再使用str = query.value(1).toString();读取出来显示的时候始终是乱码,不管输入什么文字始终显示 “锟斤拷” ,百度上查找了得出的结论是GBK字符集和Unicode字符集之间的转换问题,然后在程序里试了各种字符转换的方式,全都没用效果,几乎翻遍了百度关于数据库乱码问题的文章,终于找到一篇说是要将QODBCDriverPrivate类的变量unicode值为true,并重新编译替换之前的库,于是在\Qt\Qt5.6.3\5.6.3\Src\qtbase\src\sql\drivers\odbc文件夹下打开qsql_odbc.cpp找到QODBCDriverPrivate类一看,果然unicode(false)默认是false,将其改为true,然后保存,进入到\Qt\Qt5.6.3\5.6.3\Src\qtbase\src\plugins\sqldrivers\odbc,shift+右键,点击“在此处打开命令窗口”,然后执行:qmake odbc.pro;完毕后在执行:mingw32-make;第一次没有成功,提示mingw32-make不是内部或外部命令,然后又将Qt\Qt5.6.3\Tools\mingw492_32\bin这个路径添加到环境变量PATH里,再次执行mingw32-make,终于成功,生成的库文件在\Qt\Qt5.6.3\5.6.3\Src\qtbase\plugins\sqldrivers里,qsqlodbc.dll 和 qsqlodbcd.dll,将这两个文件覆盖到\Qt\Qt5.6.3\5.6.3\mingw49_32\plugins\sqldrivers里,然后重新编译应用程序,感人的中文终于正常显示了,本人qt初学者,一个小小的问题折腾了两天,现在把编译好的qsqlodbc.dll 和 qsqlodbcd.dll两个文件上传上来,有需要的朋友可以直接下载替换原来的文件即可。
ODBC驱动(https://download.csdn.net/download/boian/10737512)

QT ODBC连接数据库读取中文乱码的一个解决方法相关推荐

  1. php pdo 中文乱码,php pdo oracle中文乱码的快速解决方法

    在/etc/profile.d/简历oracle.sh 内容如下在NLS_LANG设置编码ORACLE_HOME=/usr/lib/oracle/12.1/client64 C_INCLUDE_PAT ...

  2. sql 转html 中文乱码问题,SqlServer中文乱码问题的解决方法

    SqlServer中文乱码问题的解决方法 我流程里,使用的是gbk,或gb2312编码格式,utf-8还没试过. 1)jsp页面: //1.下面这句是解决乱码的关键之一,下面这句不仅影响中文,还影响布 ...

  3. php pdo连接oracle乱码,php pdo oracle中文乱码的快速解决方法

    在/etc/profile.d/简历oracle.sh 内容如下在NLS_LANG设置编码 ORACLE_HOME=/usr/lib/oracle/12.1/client64 C_INCLUDE_PA ...

  4. php gbk json_encode,php中json_encode处理gbk与gb2312中文乱码问题的解决方法

    这篇文章主要介绍了php中json_encode处理gbk与gb2312中文乱码问题的解决方法,需要的朋友可以参考下 本文讲述了php中json_encode处理gbk与gb2312中文乱码问题的解决 ...

  5. strrev php_PHP使用strrev翻转中文乱码问题的解决方法

    本文实例讲述了PHP使用strrev翻转中文乱码问题的解决方法.分享给大家供大家参考,具体如下: 在用PHP中的strrve翻转中文时,会出现乱码情况 例如: header("Content ...

  6. Python2写csv文件中文乱码问题及解决方法详解

    导读 python2最大的坑在于中文编码问题,遇到中文报错首先加u,再各种encode.decode,这篇文章给大家介绍Python2写csv文件中文乱码问题及解决方法,感兴趣的朋友跟随小编一起看看吧 ...

  7. php pdo连接oracle乱码,php pdo oracle中文乱码的快速解决方法_PHP

    在/etc/profile.d/简历oracle.sh 内容如下在NLS_LANG设置编码 ORACLE_HOME=/usr/lib/oracle/12.1/client64 C_INCLUDE_PA ...

  8. centos php 中文乱码,XShell连接CentOS 7.2显示中文乱码问题的解决方法

    背景 使用U盘往Windows主机.Linux主机传文件还是经常的事,但有时候文件名有中文, 传到Linux机器会有乱码,选择起来也很麻烦,最近刚好遇到,写下解决方法. 环境 Linux [root@ ...

  9. php 写入mysql 乱码,php写入mysql中文乱码的实例解决方法

    php写入mysql中文乱码的实例解决方法 php写入mysql出现中文乱码的解决办法是:在建立数据库连接之后,将该连接的编码方式改为中文. 代码如下: $linkID=@mysql_connect( ...

最新文章

  1. LINUX 第五章 apache php mysql
  2. Boost::context模块fiber的分段的测试程序
  3. 2.3.4 mysql 用户密码管理
  4. Python内置函数之--open
  5. [Database] 数据库完整性
  6. 怎样用注解的方式配置Spring?
  7. C语言变量的类型和存储位置
  8. java 封装结果集_java封装结果集
  9. iOS学习资源(五)
  10. Linux使用过程中的经验积累
  11. phpnow php升级,phpnow如何升级php版本
  12. 电脑调节屏幕亮度快捷键失灵の解决方案
  13. 在电脑上安装Linux系统步骤
  14. [日推荐] 『闲聊助手』人工智能小程序,仅此一款!-极乐商店store.dreawer.com
  15. gpib-usb-hs linux,美国NI GPIB-USB-HS+连接线GPIB转USB接口控制器高速传输
  16. centos7连接外网详细教程
  17. 海尔电视显示连接不上服务器,海尔电视怎么连接手机
  18. 面试题大全<持续更新>
  19. windows服务器上无法运行bat文件,Windows 2008任务计划执行bat脚本失败返回0x1的解决方法...
  20. 管家婆辉煌版常见理解性问题

热门文章

  1. K8s (Kubernetes简介、特性、架构)
  2. 北大igem生物计算机,北京大学iGEM团队在国际大赛中取得优异成绩
  3. kl变换简单的解释入门_2010年20个最佳入门指南解释者主题
  4. 【深度强化学习】马尔可夫决策过程(Markov Decision Process, MDP)
  5. 详述Deep Learning中的各种卷积(二)
  6. Docker专题(二)-Docker安装与启动
  7. python 使用node_vm2执行js
  8. CCF智能无人车比赛(国内绿洲科学实验云平台)心路历程+AWS Deepracer智能无人车比赛经验(附优秀代码re:lnvent 2018赛道)
  9. [渝粤教育] 江西财经职业学院 成本核算与管理 参考 资料
  10. 设置TinyMCE在线HTML编辑控件只读