PyQt5 QMYSQL驱动程序未加载

2024-09-25 08:40:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我知道这个问题有很多问题和答案,但对我来说什么都不管用。在

我安装了最新的QT Creator 4.9.2和{}MinGW 32-Bit和{}来编译QMYSQL驱动程序。我把驱动程序放在sqldrivers文件夹中,而libmysql.dll在bin文件夹中。在

<>如果我用C++连接到数据库,一切都很好,但是我不使用Python。在

另外,我在一个新的Python 3.7 32位上安装了:

  • PyQt5:pip install pyqt5 (5.13.0)
  • mysqlclient:pip install mysqlclient (1.4.2)
  • mysql连接器:pip install mysql-connector (2.2.9)

但是我之前在PyQt5的sqldrivers文件夹中编译的驱动程序,因为驱动程序也不见了。在

我的班级:

class SqlConnector(QSqlDatabase):
    def __init__(self):
        super(SqlConnector, self).__init__()
        self.db = self.connect()

    def __del__(self):
        self.db.close()

    def connect(self):
        db = QSqlDatabase.addDatabase("QMYSQL")
        db.setHostName("hostname")
        db.setDatabaseName("database")
        db.setUserName("username")
        db.setPassword("1234567890")

        ok = db.open()

        if ok:
            print("Connection established")
            return db
        else:
            print("Connection failed: ", db.lastError().text())
            return None

    def getPools(self):
        query = QSqlQuery("SELECT id, name, token, dlxCode FROM AnalysisPool", self.db)

        model = QSqlQueryModel()
        model.setQuery(query)

        return model

主要方法:

^{pr2}$

PyQt的库路径是C:/Python/lib/site-packages/PyQt5/Qt/plugins和{}

使用的操作系统是Windows 10 (1809) 64-Bit,我在路径变量MySQLServer lib文件夹中包含了该操作系统。在

我不知道该怎么办,我读了很多关于这个话题的问题,却没有一个有效的解决办法。在


Tags: installpipself文件夹dbmodelreturndef