• 6317阅读
  • 2回复

[提问]Qt 3.3.5 读取 Oracle 中文列显示问题!(已经搞定,方法见内) [复制链接]

上一主题 下一主题
离线echoyan
 

只看楼主 倒序阅读 楼主  发表于: 2007-12-02
Qt 3.3.5 读取 Oracle 中文列显示问题!(已经搞定,方法见内)
— 本帖被 XChinux 从 Qt基础编程 移动到本区(2013-04-01) —
数据库为Oracle 9i

客户端 NLS_LANG = AMERICAN_AMERICA.AL32UTF8
服务器端 NLS_LANGUAGE = AMERICAN
                  NLS_TERRITORY = AMERICA
                  NLS_CHARACTERSET  =  AL32UTF8

用 QSqlQuery 查询得出的含有中文的字段为乱码,应该怎样解决啊?谢谢

( PS:用OEM和TOAD看含有中文的字段都是正确的 )

方法: 源文件目录中驱动目录下的 qsql_oci.cpp 中红色行取消注释
// uncomment this if you have problems
// with oracle character sets
#define QOCI_NO_CHARSET_CONVERSION
然后重编译
[ 此贴被echoyan在2007-12-02 23:54重新编辑 ]
离线hunter
只看该作者 1楼 发表于: 2009-08-19
非常感激,我也是读取时这个问题,弄了我好久,你的方法是正确的。
离线zhixiangxu

只看该作者 2楼 发表于: 2018-03-18
老哥,我字符集编码为US7ASCII,提取乱码,我的 QT 版本找不到你说的注释的部分。。。
快速回复
限100 字节
 
上一个 下一个