当我想添加数据库时遇到一些麻烦.
_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
我还将文件夹sqldrivers复制到Debug文件夹.还尝试将dll drom这个文件夹复制到Debug.也不起作用.
解决方法:
我来这里谷歌搜索,因为我在Windows中遇到了同样的问题.
在我的情况下解决这个问题我必须安装PostgreSQL for Windows 32位,因为我的Qt目标是MinGW 32位.
另外,我必须将PATH添加到PostgreSQL bin和lib目录中,以便Qt可以找到正确的.dll.
@SET PATH=C:\Program Files (x86)\PostgreSQL\9.6\bin\;C:\Program Files (x86)\PostgreSQL\9.6\lib\;%PATH%
可以在启动Qt Creator之前设置PATH,或者通过“项目”窗格中的“构建环境”使用Qt Creator本身.