pyqt5連接mysql數(shù)據(jù)庫(kù)出錯(cuò)的解決方法
在使用pyqt5連接mysql數(shù)據(jù)庫(kù)時(shí),出現(xiàn)連接錯(cuò)誤:
: not
: : QPSQL
解決方法是,進(jìn)入sql驅(qū)動(dòng)目錄,能找到共享庫(kù) .so
/usr/local/lib/.6/dist-/PyQt5/Qt/,運(yùn)行終端命令
ldd .so
顯示下列所需文件,可知缺少.so.18, 需要找到該文件并安裝。
網(wǎng)上搜索吧,找到了這個(gè):
下載右側(cè).6.25-.deb,注意數(shù)字
安裝 sudo dpkg -i .6.25-.deb
此安裝將.so.18裝到 /usr/lib/-linux-gnu,此目錄下還有
.so.20和.so.21,這可能是我安裝mysql 8.0時(shí)產(chǎn)生。曾試過用軟鏈接使這兩個(gè)共享庫(kù)分別替代.so.18但不成功。
安裝會(huì)將.so.18放到目錄
/usr/lib/-linux-gnu,如果你不是這個(gè)目錄,只好自己想辦法啦啦啦。
運(yùn)行l(wèi)dd .so看到共享庫(kù)關(guān)系已經(jīng)成功。
OK
連接mysql數(shù)據(jù)庫(kù),連接成功。
db = QSqlDatabase.addDatabase('QMYSQL')
db.setHostName('localhost')
db.setDatabaseName('mydatabase1')
db.setUserName('root')
db.setPassword('******')

ok = db.open()
if not ok:
print(db.lastError().text())
后記:
系統(tǒng):.04
數(shù)據(jù)庫(kù):mysql 8.0
pyqt5版本:5.12.0
版本:.6
我安裝的系統(tǒng)和軟件模塊算比較新的dephi 連接數(shù)據(jù)庫(kù)異常處理dephi 連接數(shù)據(jù)庫(kù)異常處理,也是這些新版帶來無窮煩惱。
按照pyqt5的安裝: sudo pip3 pyqt5
安裝的版本是 pyqt 5.14.1 ,可這個(gè)新版怎么安裝都沒有mysql的驅(qū)動(dòng).so,無奈之下只好退回去安裝5.12.0
sudo pip3 pyqt5==5.12.0