问题标签 [qoci]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2671 浏览

oracle - 为什么 QOCI 插件不起作用

我正在尝试将 Qt 与 QOCI 一起使用(实际上,以及其他插件),但由于某种原因我不能。这是我所做的和结果:

1- http://doc.qt.nokia.com/latest/sql-driver.html#qoci 插件搭建成功。

2- 将插件调试和发布 dll 和 lib 文件复制到 plugins/sqldrivers 和 OCI.DLL 到 %WINDIR%\system32(plugins/sqldrivers 是其他插件如 QPSQL 和 QMYSQL 所在的位置)

3- QSqlDatabase::isDriverAvailable(QOCI) 返回 false,它为 QMYSQL 和 QPSQL 返回 true。我对 QMYSQL 和 QPSQL 做了同样的事情

4- QStringList qsl = QSqlDatabase::drivers(); 返回的字符串列表中没有 QOCI。但是有 QMYSQL、QPSQL 和其他一些。

附加检查:使用依赖 walker 打开 qsqloci4.dll,无法找到 3 个 dll:1-QtCore4.dll 2-QtSql4.dll 3-MSVSC80.dll 但是,使用依赖 walker 打开 qsqlpsql.dll 时也无法找到它们。我相信加载 dll 并没有因为 qsqloci4.dll 的依赖而失败。但是,仍然欢迎任何想法。

消息

失败!!!请注意,这两个文件都存在于给定路径中。

我相信由于这个错误,Qt 也无法加载插件。现在的问题有点不同,但是为什么 LoadLibrary 在这种情况下会失败?有任何想法吗?

提前致谢。

0 投票
1 回答
7286 浏览

windows - 如何使用 MinGW 在 Windows 上构建 Qt QOCI(Oracle 数据库驱动程序)?

最后两天,我尝试为 Qt 构建调试和发布 Oracle 数据库驱动程序,但没有成功。Qt Project (链接)中给出的手册远不完整,实际上事情比显示的要复杂得多。

经过多次尝试,我终于在网上一些不完整的帖子的帮助下构建了 dll:

由于这两个来源都不完整,并且没有确切地教如何创建 dll,我将通过回答这个问题来写下方法。

唯一仍然存在的疑问是:有没有更好的方法来做到这一点?我的意思是,我认为编译这些库的标准方法,如上面引用的 Qt 项目网站中所述,应该可以在没有我(和其他人)必须做的所有手动工作的情况下工作。那么我/我的 Qt/其他东西有什么问题吗,或者 Qt Project 的手册不完整,仅此而已?

0 投票
0 回答
188 浏览

c++ - QOCI插件制作错误QT

我在尝试为 QT 5.7 制作 QOCI 驱动程序时遇到了一些问题。

我正在关注本指南(如何使用 MinGW 在 Windows 上构建 Qt QOCI(Oracle 数据库驱动程序)?),它在“第三次尝试”之前有所帮助。

在“第二次尝试”之后我调用mingw32-make我有这样的错误debug\qsqlocid_resource_res.o no such file or directory

在 Make.Release 文件中,我有:

在 Make.Debug 我有:

那么我做错了什么?

0 投票
0 回答
1757 浏览

c++ - 无法加载 QOCI 驱动程序

前几天我编译了oracle驱动,用Qt打开成功了,但是今天,我用同样的代码遇到了麻烦!这是代码:

和消息:

Qt的版本是5.9.0,oracle是12c。我为这个问题而烦恼,谁能帮助我?

0 投票
1 回答
957 浏览

oracle - 如何使用 Oracle 客户端 12 在 Linux 上编译 Qt5 QOCI 插件?

官方文档应该可以解决问题,但不适合我:

我试过的:

他们假设我们已经安装了 Instant Client Package SDK 的 RPM 包,而我不在这种情况下。我不知道客户端是如何安装的,但我没有安装名为 Oracle 的软件包。