PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

QT5:Gagal memuat driver psql di windows

Kemungkinan besar gagal untuk secara dinamis menautkan qsqlpsql.dll file ketika memanggil LoadLibrary di atasnya setelah program Anda meminta driver itu. LoadLibrary mengembalikan kode kesalahan yang sama ketika DLL target hilang seperti ketika salah satu DLL yang menjadi sandaran DLL target hilang atau tidak dapat dimuat . Jadi Qt sangat mungkin mendapatkan kesalahan "perpustakaan tidak ditemukan" dan mengasumsikan "oh, driver Pg tidak boleh ada di build Qt ini", di mana sebenarnya ada dan gagal memuat karena masalah ketergantungan, masalah kompatibilitas perpustakaan, dll.

Untuk menentukan mengapa gagal memuat, Anda dapat seperti yang disarankan Frank Osterfeld menggunakan alat seperti Dependency Walker (depends.exe ) . Jika Anda mengompilasi kode 32-bit pada mesin 64-bit, Anda ingin mendapatkan dependensi walker 32-bit.

Kemungkinan besar akan gagal karena ada ketergantungan qsqlpsql.dll hilang - baik libpq.dll , atau salah satu perpustakaan yang libpq membangun membutuhkan. Ketergantungan walker akan membantu mengisolasi ini. Mungkin juga Anda mencoba memuat libpq.dll 64-bit dalam program 32-bit, atau sebaliknya.

Anda juga mungkin merasa informatif untuk menjalankan program Anda dengan Process Monitor yang melacaknya. Ini akan menghasilkan banyak detail tentang file mana yang coba dibuka/diperiksa, antara lain, dan dapat membantu melacak hal-hal seperti PATH yang tidak terduga masalah.

Jika Anda masih buntu, selalu ada opsi untuk melangkah dengan debugger.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dapatkan semua kunci asing menggunakan JDBC

  2. Jenis JOIN apa yang digunakan

  3. Bahasa prosedural PostgreSQL C tidak ditemukan

  4. Hapus PostgreSQL dengan gabungan dalam

  5. Menambahkan X jam - @Query - Spring Data JPA