2012-01-11 71 views
1

我正在爲Python 2.6使用Windows版本4.8.5的PyQt二進制文件。好像我不能在所有PyQt窗口 - 根本無法加載任何sql驅動程序

http://www.riverbankcomputing.co.uk/software/pyqt/download

QtSql.QSqlDatabase.isDriverAvailable('QPSQL') 
QtSql.QSqlDatabase.isDriverAvailable('QMYSQL') 
QtSql.QSqlDatabase.isDriverAvailable('QSQLITE') 

一切加載任何SQL驅動程序返回「假」

我在目錄中檢查,有4倍的DLL中有

C:\Python26\Lib\site-packages\PyQt4\plugins\sqldrivers 

qsqlite4.dll 
qsqlmysql4.dll 
qsqlodbc4.dll 
qsqlpsql4.dll 

我該怎麼辦才能解決這個問題?

+0

你在窗戶上嗎?如果是這樣,你需要自己編譯QPSQL DLL。可悲的是,我還沒有找到一種可靠的方法來做到這一點,這非常煩人。 – TyrantWave 2012-01-11 11:56:06

+0

暴君,謝謝你的回覆。我實際上發現這完全是另一個錯誤,我正在編輯我原來的帖子:( – Panupat 2012-01-11 12:26:11

+1

你初始化了應用程序嗎?添加'app = QtCore.QCoreApplication([])'作爲程序運行的第一件事,否則dll不會被初始化 – TyrantWave 2012-01-11 12:31:55

回答

1

我在Windows 10下使用Python 2.7,Postgresql,並在QT中開發GUI,使用PyQt4和QtSql。並使用Spyder。 (實際上一切都包含在Python(x,y)中)

, - )但這裏是簡單的解決方案。打開文件C:\ Python27 \ qt.conf,首先我裏面的文件該行:

Prefix = C:/Python27/Lib/site-packages/PyQt4 
Binaries = C:/Python27/Lib/site-packages/PyQt4 

則添加下一行:

Plugins = C:/Python27/Lib/site-packages/PyQt4/plugins 
Translations = C:/Python27/Lib/site-packages/PyQt4/translations 

確保插件在C :/ Python27 /庫/站點包/ PyQt4的/插件。然後關閉python並再次打開。然後所有的工作都完美。你在這裏找到相同的答案http://www.voidynullness.net/blog/2013/01/24/pyqt-database-driver-loading-issues-on-windows-after-installing-pyside/

相關問題