我正在尝试使用pyqt5连接到mysql服务器,脚本如下:(我的平台是ubuntu18.04)
from PyQt5.QtSql import QSqlDatabase, QSqlQuery, QSqlTableModel
from PyQt5.QtWidgets import QTableView, QApplication
import sys
app = QApplication(sys.argv)
db = QSqlDatabase.addDatabase('QMYSQL')
db.setHostName('127.0.0.1')
db.setDatabaseName('ems_db')
db.setUserName('ems_user')
db.setPassword('emspasswd')
ok = db.open()
if not ok: print(db.lastError().text())
else: print("connected")
query = QSqlQuery(db);
query.exec_('SELECT * FROM tbl_Customers');
然而,我得到下面的错误信息,我真的没有任何线索。
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QPSQL QPSQL7
Driver not loaded Driver not loaded
QSqlQuery::exec: database not open
很奇怪,除了postgresql,我在Windows10上也有同样的问题。
我只是不明白,因为共享库似乎存在于正确的位置:
$ ls /usr/local/lib/python3.6/dist-packages/PyQt5/Qt/plugins/sqldrivers/
libqsqlite.so libqsqlmysql.so libqsqlpsql.so
暂无答案!
目前还没有任何答案,快来回答吧!