Python图形界面学习记录5:QSqlDatabase无法连接到MySQL数据库
1、Pyqt5与MySQL是否连接成功的测试
from PyQt5.QtSql import QSqlDatabase, QSqlQuery
db = QSqlDatabase.addDatabase('QMYSQL')
db.setDatabaseName('login')
db.setHostName('127.0.0.1')
db.setPort(3306)
db.setUserName('root')
db.setPassword('12345')
if not db.open(): # 判断数据库是否打开
print("失败")
else:
query = QSqlQuery()
result = query.exec_("SELECT * FROM `tb_login`")
2、终端输出“失败”,但是没有错误信息
解决方法:
第一步、查看site-packages\PyQt5\Qt\bin文件夹下是否有libmysql.dll文件,没有的话从MySQL安装路径下的lib文件夹中找到这个文件,并拷贝到该文件夹中;
第二步、运行程序,查看是否可以运行。不能的话,继续查看Lib\site-packages\PyQt5\Qt\plugins\sqldrivers文件夹下是否有qsqlmysql.dll文件,没有的话有以下办法:
- 大神可以自己去编译出这个文件,我没有详细了解,不懂怎么操作
- 自己从网上搜索合适的qsqlmysql.dll文件,并拷贝过去
- 卸载当前的Pyqt5,并安装指定版本5.12.1,安完后再操作一下第一步
- 这是我自己电脑(AMD、64位)可以成功运行的文件,可以直接下载试试。qsqlmysql下载地址
提取码:1234