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

sqldriversまた、フォルダーをフォルダーにコピーしDebugます。また、このフォルダから dll を にコピーしようとしましたDebug。どちらも機能しません。

4

4 に答える 4

12

ドライバーがロードされていないQT_DEBUG_PLUGINS=1理由の完全な情報を取得する場合は、システム変数を追加します。QPSQL

おそらく、Qt がそれを見つけられないことに気付くでしょう。ここに出力をコピーして貼り付けて、正確に何が起こるかを確認してください。

于 2014-10-22T13:47:39.240 に答える
12

Windowsでも同じ問題が発生したため、グーグルでここに来ました。

私の場合、問題を解決するには、Qt ターゲットが MinGW 32 ビットだったので、Windows 32 ビット用の PostgreSQL をインストールする必要がありました。

さらに、PATHQt が正しい.dlls.

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

は、Qt Creator を起動する前に設定することも、ペインPATHの を介して Qt Creator 自体を使用することもできます。Build EnvironmentProjects

于 2016-11-12T00:49:44.500 に答える
2

depends.exe を使用するqsqlpsql.dllと、この dll がフォルダーlibpq.dllから必要であることがわかりました。PostgreSQL\9.3\libフォルダに追加libpq.dllするDebugと動作します:)

于 2014-10-24T06:55:27.550 に答える