Kevinwang623
Kevinwang623
采纳率0%
2015-09-09 13:04 浏览 2.8k

QODBC连接oracle中文乱码

首先简单说一下环境:XP+Qt4.8+oracle10g
现象:
1、程序A利用QSqlDatabase借助于QODBC连接到oracle数据库(利用Microsoft ODBC driver for oracle和oracle自带的驱动均一样的效果),连接及查询均正常,但是返回值中存在中文时,所有中文均显示为“?”。
借助于A程序实现入库的时候,入库成功。但是数据库表中中文字段显示为乱码。再用A取得刚才入库的信息时,库表中刚才插入的乱码,
取出来后可以正常显示。
2、利用本机的plsql和sqlplus登陆,查询中文均正常显示。
3、利用VC++6.0+ODBC来访问,中文显示正常。
补充:目前oracle服务端和客户端编码均一致,且均可正常显示中文。目前估计问题可能出现在QODBC的驱动上,恳请各位大神指点!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

3条回答 默认 最新

  • oyljerry oyljerry 2015-09-09 14:14

    连接字符串,数据库驱动配置中Ruhr处理中文的,配置字符集没

    点赞 评论 复制链接分享
  • u012377333 一枪尽骚丶魂 2015-09-10 02:34

    需要配置字符编码,通常这类问题都是这样的,都设置为UTF-8

    点赞 评论 复制链接分享
  • Kevinwang623 Kevinwang623 2015-10-07 10:33

    最后是通过编译QOCI来实现的,谢谢以上各位的解答!

    点赞 评论 复制链接分享