QPSQL驱动没有加载Qt

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QPSQL驱动没有加载Qt相关的知识,希望对你有一定的参考价值。

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

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

调用此方法后,我有一个错误:

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

我包括PATH变量路径:

PostgreSQL9.3in
PostgreSQL9.3lib
PostgreSQL9.3include

另外我将文件夹sqldrivers复制到Debug文件夹。还尝试将dll drom这个文件夹复制到Debug。也不起作用。

答案

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

在我的情况下解决这个问题我必须安装PostgreSQL for Windows 32位,因为我的Qt目标是MinGW 32位。

另外,我必须将PATH添加到PostgreSQL bin和lib目录中,这样Qt才能找到合适的.dlls

@SET PATH=C:Program Files (x86)PostgreSQL9.6in;C:Program Files (x86)PostgreSQL9.6lib;%PATH%

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

另一答案

如果要获取未加载QT_DEBUG_PLUGINS=1驱动程序的原因的完整信息,请添加系统变量QPSQL

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

另一答案

qsqlpsql.dll上使用depends.exe,发现这个dll需要来自libpq.dllfolder的PostgreSQL9.3lib。将libpq.dll添加到Debug文件夹,它的工作原理:)

另一答案

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

以上是关于QPSQL驱动没有加载Qt的主要内容,如果未能解决你的问题,请参考以下文章

Qt 驱动程序 Postgresql 可用但未加载

QT5:在 windows 中加载 psql 驱动程序失败

PyQt5:未加载驱动程序

Qt5、C++:未加载 QMYSQL 驱动程序

Qt动态加载MySQL驱动程序

Qt5 MYSQL驱动未加载错误