11

我想添加数据库时遇到了一些麻烦。

    _dataBase = QSqlDatabase::addDatabase("QPSQL");

调用此方法后出现错误:

QSqlDatabase: QPSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7

我包括PATH可变路径:

PostgreSQL\9.3\bin
PostgreSQL\9.3\lib
PostgreSQL\9.3\include

我也将文件夹复制sqldriversDebug文件夹。还尝试将此文件夹中的 dll 复制到Debug. 也不行。

4

4 回答 4

12

QT_DEBUG_PLUGINS=1如果您想获得有关QPSQL驱动程序未加载原因的完整信息,请添加系统变量。

可能您会发现 Qt 无法找到它。在此处复制并粘贴输出以了解究竟发生了什么。

于 2014-10-22T13:47:39.240 回答
12

我来这里谷歌搜索是因为我在 Windows 中遇到了同样的问题。

就我而言,为了解决这个问题,我必须为 Windows 32 位安装 PostgreSQL,因为我的 Qt 目标是 MinGW 32 位。

此外,我必须PATH.dlls.

@SET PATH=C:\Program Files (x86)\PostgreSQL\9.6\bin\;C:\Program Files (x86)\PostgreSQL\9.6\lib\;%PATH%

PATH可以在启动 Qt Creator 或使用 Qt Creator 之前通过窗格中Build Environment的 设置。Projects

于 2016-11-12T00:49:44.500 回答
2

使用depends.exe qsqlpsql.dll,发现这个dll需要libpq.dll来自PostgreSQL\9.3\lib文件夹。添加libpq.dllDebug文件夹,它的工作原理:)

于 2014-10-24T06:55:27.550 回答
0

pip install PyQt5如果您已经使用 conda 或安装程序安装了它,请尝试事件。它帮助了我。

于 2019-01-03T21:51:12.523 回答