PyQt5連線MySQL及QMYSQL driver not loaded錯誤解決
一、連線語句
from PyQt5.QtSql import QSqlDatabase db=QSqlDatabase.addDatabase('QMYSQL') db.setHostName('localhost') db.setDatabaseName('dbwork') db.setUserName('users') db.setPassword('ZDSYS') db.setPort(3306) db.open()
二、錯誤解決
1、提示1:QMYSQL driver not loaded
a、問題分析
python的PyQt5中需要對應版本位數(32/64)的libmysql.dll(MySQL中)。
b、解決方案
例:
將檔案
C:\Program Files\mysql-5.7.26-win32\lib\libmysql.dll
放入資料夾
C:\Users\Administrator\AppData\Local\Programs\Python\Python37\Lib\site-packages\PyQt5\Qt\bin
如安裝的MySQL版本位數與python不一致無對應libmysql.dll檔案,請下載:
32位:https://cdn.mysql.com/archives/mysql-connector-c/mysql-connector-c-6.1.11-win32.msi
對應的libmysql.dll目錄。
32位:C:\Program Files\MySQL\MySQL Connector C 6.1\lib\libmysql.dll
64位:C:\Program Files(×84)\MySQL\MySQL Connector C 6.1\lib\libmysql.dll
注:只能安裝一個。
2、提示2:available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7
問題分析
注意該提示中有無QMYSQL,如果有,按提示1解決,如果沒有則是因為PyQt5缺少元件qsqlmysql.dll。
解決方案
解除安裝現有PyQt5安裝固定版本。
pip uninstall PyQt5 pip install PyQt5==5.12.1 #python終端中 pip install --user PyQt5==5.12.1 #anaconda終端中
3、PyQt5檔案位置
python3.7:
C:\Users\Administrator\AppData\Local\Programs\Python\Python37\Lib\site-packages\PyQt5\Qt\plugins\sqldrivers\qsqlmysql.dll
anaconda:
C:\Users\Administrator\AppData\Roaming\Python\Python37\site-packages\PyQt5\Qt\plugins\sqldrivers
到此這篇關於PyQt5連線MySQL及QMYSQL driver not loaded錯誤解決的文章就介紹到這了,更多相關PyQt5連線MySQL內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!