Python+PyQt5+Mysql(一)解决PyQt5连接MySql驱动问题
de1.问题起因:
PyQt5通过QSqlDatabase连接mysql出现“QSqlDatabase: QMYSQL driver not loaded”报错
2.问题原因分析:
1)查看自己的pyqt5的版本:
通过命令行pip show pyqt5,确定自己的版本5.15.4
2)写个小测试程序看看当前pyqt5支持哪些数据库连接驱动
#!/usr/bin/env python3 # -*- coding: utf-8 -*- Test Database Drivers __author__ = TianJiang Gui import sys from PyQt5.QtWidgets import QApplication from PyQt5.QtSql import QSqlDatabase if __name__ == __main__: app = QApplication(sys.argv) print(QSqlDatabase.drivers()) sys.exit(app.exec_())
得到的结果:[QSQLITE, QODBC, QODBC3, QPSQL, QPSQL7]
没有‘QMYSQL’
3)解决PyQt5支持QMYSQL问题
1)将mysql安装目录下的liblibmysql.dll拷贝到 PyQt5Qt5in目录下
2)在网上找到支持pyqt5.15版本的qsqlmysql.dll文件,并将其拷贝到PyQt5Qt5pluginssqldrivers目录下
4)再次运行上述测试代码
运行结果:
以上结果说明QMYSQL正确安装上了。
最后说明:由于每个人的安装环境,运行环境都不一样,所以一定要注意下载的qsqlmysql.dll文件对应的版本(在此我就不提供了),还有注意文件拷贝的路径(由于我安装了很多python版本,一开始没拷贝到正确的路径,导致测试不成功)。
下一篇:
MYSQL程序的两种连接方式