方程式sunny 2023-02-02 11:01 采纳率: 0%
浏览 51
已结题

qt5.6.1读取oracle8中文数据乱码

qt通过odbc连接oracle,在tableview上显示数据库数据时时乱码,有什么解决办法

  • 写回答

4条回答 默认 最新

  • youge0518 2023-02-02 11:14
    关注

    可以试下这几个办法,有用的话望采纳谢谢

    1. 设置数据库编码为 UTF-8:在连接数据库的时候设置 NLS_LANG 环境变量为 "American_America.UTF8"。

    2. 设置 QTextCodec:在代码中使用 QTextCodec::setCodecForLocale() 函数将本地字符集设置为 UTF-8。

    3. 在数据库查询时设置 NLS_LANG:使用下面的 SQL 语句设置 NLS_LANG:

    ALTER SESSION SET NLS_LANGUAGE='AMERICAN';
    ALTER SESSION SET NLS_TERRITORY='AMERICA';
    ALTER SESSION SET NLS_CHARACTERSET='UTF8';
    
    评论

报告相同问题?

问题事件

  • 系统已结题 2月10日
  • 创建了问题 2月2日