qt 加载qsqlocid.dll然后又卸载报错QOCI driver not loaded

 

 

"2025-12-30 14:59:44:Oracle开始连接start" “SugarTvision.exe”(Win32): 已加载“D:\QT_Project_vs\SugarTvision\x64\Debug\plugins\sqldrivers\qsqlocid.dll”。已加载符号。 “SugarTvision.exe”(Win32): 已卸载“D:\QT_Project_vs\SugarTvision\x64\Debug\plugins\sqldrivers\qsqlocid.dll” QSqlDatabase: QOCI driver not loaded QSqlDatabase: available drivers: QSQLITE QMARIADB QMYSQL QMYSQL3 QOCI QOCI8 QODBC QODBC3 QPSQL QPSQL7 [QxOrm] qx::QxSqlDatabase : 'unable to open connection to database' Driver not loaded Driver not loaded

参考:

https://txwtech.blog.csdn.net/article/details/156456290

image

 

 

下载基础包

https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html

image

 拷贝oci.dll 与oraociei.dll到vs2019项目的cpp文件夹目录

 

QOCIDriver: unable to create environment

  • Qt 编译 QOCI 时使用的 Oracle SDK 版本,最好与运行时 Instant Client 主版本一致(如都用 19.x 或都用 21.x)。
  • 虽然 Oracle 声称向后兼容,但跨大版本(如用 12c SDK 编译,运行 21c Client)可能出问题。

✔️ 解决:(拷贝oci.dll 与oraociei.dll到vs2019项目的cpp文件夹目录),instantclient_19_29还需要oraons.dll

  • 如果你是自己编译的 qsqlocid.dll,请确保编译时使用的 oci.h 和 oci.lib 来自 与运行时相同的 Instant Client 版本。
  • 或者,直接使用 预编译的 Qt + 官方支持的 Oracle 版本组合(如 Qt 5.15 + IC 19.10)
posted @ 2025-12-30 15:35  txwtech  阅读(13)  评论(0)    收藏  举报