【问题标题】:PyQt4 QSqlDatabase: QMYSQL driver not loadedPyQt4 QSqlDatabase:未加载 QMYSQL 驱动程序
【发布时间】:2020-10-08 23:25:12
【问题描述】:

[Python 版本:3.7.7、Windows 10、MySQL 8、PyQt 版本:4.11.4]

我到处检查,但没有找到解决我的情况的方法。这是我在控制台中遇到的错误

QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QPSQL7 QPSQL QODBC3 QODBC QSQLITE
Driver not loaded Driver not loaded

这是我的代码

def createConnection():
    db = QtSql.QSqlDatabase.addDatabase('QMYSQL')
    db.setHostName('localhost')
    db.setDatabaseName('shopping')
    db.setPassword('mce')
    db.open()
    print(db.lastError().text())
    return True

我检查了目录 C:\Python37\Lib\site-packages\PyQt4\plugins 并且我什至没有 sqldrivers 文件夹,所以它们必须存储在其他地方(如果它们真的存在的话)。我已经重新安装了 MySQL python 连接器,但我仍然遇到同样的问题。我还在 C:\Python37\Lib\site-packages\PyQt4\plugins 中创建了一个 sqldrivers 文件夹并将 libmysql.dll 放在那里,只是为了看看它是否可以工作,显然它没有。

【问题讨论】:

  • 在意识到 PyQt5 与 PyQt4 没有什么不同之后,我正在切换。已经不值得头疼了。

标签: python mysql pyqt


【解决方案1】:

我升级到 PyQt5 只是在那儿发现了同样的问题。因此,在这个问题上花费了几天之后,最好的解决方案就是下载驱动程序。 关注这个link

我可以确认这些文件适用于 PyQt5,但它们也应该适用于 PyQt4。我使用了 qsqlmysql.dll 和 qsqlmysqld.dll 文件并将它们放在 C:\Python38\Lib\site-packages\PyQt5\Qt\plugins\sqldrivers 中。一切都检测到了

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-08
    • 2016-09-19
    • 2016-12-02
    • 2018-05-17
    • 2020-08-02
    • 1970-01-01
    • 2022-12-03
    相关资源
    最近更新 更多