PyQt5 使用QSqlDatabase连接Mysql数据库时Driver not loaded Driver not loaded

相关版本说明:

python版本:Python 3.6.5
PyQt5版本:PyQt5 5.11.3

PyQt5 5.11.3 是有 qsqlmysql.dll 的

在这里插入图片描述
但是连接mysql数据库时,还是提示 Driver not loaded Driver not loaded
算往下看

直接上代码和图片

from PyQt5.QtSql import QSqlDatabase

db = QSqlDatabase("QMYSQL")
db.setHostName("localhost")
db.setPort(3306)
db.setDatabaseName("students_db")
db.setUserName("root")
db.setPassword("root")
f = db.open()
print(db.driverName(), "aaaaa")
print(db.lastError().text())
print(f)

在这里插入图片描述
原因:这是因为 PyQt5安装时,缺少了 libmysql.dll 扩展文件。

PyQt5的扩展文件目录在:Lib\site-packages\PyQt5\Qt\bin\ 如下图:
在这里插入图片描述

解决方案,如下:

第一种:

找到安装Mysql数据库的目录下 MySQL\MySQL Server xx\lib\ 找到 libmysql.dll 文件,复制到PyQt5目录下的 Lib\site-packages\PyQt5\Qt\bin\ ,如下图:
在这里插入图片描述

第二种:

由于笔者没有安装Mysql数据库,用的是phpstudy集成环境,集成环境中没有 libmysql.dll 文件。不管是bin目录下还是其他目录下都没有找到 libmysql.dll 文件,如下图:
在这里插入图片描述
百度了一下,说的是phpstudy集成环境没有这个 libmysql.dll 文件,发下图:
在这里插入图片描述
那怎么办呢?继续往下看。
我们可以去MySQL官网下载对应的zip压缩包,如下:
官网址址:https://downloads.mysql.com/archives/c-c/

在这里插入图片描述
由于笔者的python解释器是64位的,所以我就选择了剪头指向的 Windows (x86, 64-bit), ZIP Archive 压缩包下载了。打开压缩包,如下图:
在这里插入图片描述
拿到 libmysql.dll 文件,复制到 Lib\site-packages\PyQt5\Qt\bin\ 下即可,如下图:
在这里插入图片描述

再次执行代码:

在这里插入图片描述
打开成功。


----结束----。
仅学习。

猜你喜欢

转载自blog.csdn.net/qq_52722885/article/details/127881932