PyQt5连接MySQL及QMYSQL driver not loaded错误解决


Posted in Python onApril 29, 2020

一、连接语句

from PyQt5.QtSql import QSqlDatabase

db=QSqlDatabase.addDatabase('QMYSQL')
db.setHostName('localhost')
db.setDatabaseName('dbwork')
db.setUserName('users')
db.setPassword('ZDSYS')
db.setPort(3306)
db.open()

二、错误解决

1、提示1:QMYSQL driver not loaded

a、问题分析
python的PyQt5中需要对应版本位数(32/64)的libmysql.dll(MySQL中)。
即:python 32对MySQL 32,python 64对MySQL 64。

b、解决方案
例:
将文件
C:\Program Files\mysql-5.7.26-win32\lib\libmysql.dll
放入文件夹
C:\Users\Administrator\AppData\Local\Programs\Python\Python37\Lib\site-packages\PyQt5\Qt\bin

如安装的MySQL版本位数与python不一致无对应libmysql.dll文件,请下载:
32位:https://cdn.mysql.com/archives/mysql-connector-c/mysql-connector-c-6.1.11-win32.msi
64位:https://cdn.mysql.com/archives/mysql-connector-c/mysql-connector-c-6.1.11-winx64.msi

对应的libmysql.dll目录。
32位:C:\Program Files\MySQL\MySQL Connector C 6.1\lib\libmysql.dll
64位:C:\Program Files(×84)\MySQL\MySQL Connector C 6.1\lib\libmysql.dll
注:只能安装一个。

2、提示2:available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7

问题分析
注意该提示中有无QMYSQL,如果有,按提示1解决,如果没有则是因为PyQt5缺少组件qsqlmysql.dll。

解决方案
卸载现有PyQt5安装固定版本。

pip uninstall PyQt5
pip install PyQt5==5.12.1 #python终端中
pip install --user PyQt5==5.12.1 #anaconda终端中

3、PyQt5文件位置

python3.7:
C:\Users\Administrator\AppData\Local\Programs\Python\Python37\Lib\site-packages\PyQt5\Qt\plugins\sqldrivers\qsqlmysql.dll
anaconda:
C:\Users\Administrator\AppData\Roaming\Python\Python37\site-packages\PyQt5\Qt\plugins\sqldrivers

到此这篇关于PyQt5连接MySQL及QMYSQL driver not loaded错误解决的文章就介绍到这了,更多相关PyQt5连接MySQL内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木! 

Python 相关文章推荐
Pycharm学习教程(3) 代码运行调试
May 03 Python
详解Python中的Numpy、SciPy、MatPlotLib安装与配置
Nov 17 Python
Python SqlAlchemy动态添加数据表字段实例解析
Feb 07 Python
Python3.6中Twisted模块安装的问题与解决
Apr 15 Python
python定时检测无响应进程并重启的实例代码
Apr 22 Python
python lxml中etree的简单应用
May 10 Python
Python学习笔记之抓取某只基金历史净值数据实战案例
Jun 03 Python
Flask配置Cors跨域的实现
Jul 12 Python
Django Aggregation聚合使用方法解析
Aug 01 Python
Python3自定义json逐层解析器代码
May 11 Python
python实现图片转换成素描和漫画格式
Aug 19 Python
python调用百度API实现人脸识别
Nov 17 Python
Python退出时强制运行一段代码的实现方法
Apr 29 #Python
pyinstaller将含有多个py文件的python程序做成exe
Apr 29 #Python
如何使用python切换hosts文件
Apr 29 #Python
Python3.7在anaconda里面使用IDLE编译器的步骤详解
Apr 29 #Python
Python 实现一行输入多个数字(用空格隔开)
Apr 29 #Python
使用Python将图片转正方形的两种方法实例代码详解
Apr 29 #Python
Python通过Pillow实现图片对比
Apr 29 #Python
You might like
PHP STRING 陷阱原理说明
2010/07/24 PHP
关于PHP递归算法和应用方法介绍
2013/04/15 PHP
PHP实现设计模式中的抽象工厂模式详解
2014/10/11 PHP
PHP简单获取多个checkbox值的方法
2016/06/13 PHP
PHPExcel实现表格导出功能示例【带有多个工作sheet】
2018/06/13 PHP
Laravel框架源码解析之模型Model原理与用法解析
2020/05/14 PHP
JQuery Tips(3) 关于$()包装集内元素的改变
2009/12/14 Javascript
Jquery ajax不能解析json对象,报Invalid JSON错误的原因和解决方法
2010/03/27 Javascript
离开页面时检测表单元素是否被修改,提示保存的js代码
2010/08/25 Javascript
jQuery $.get 的妙用 访问本地文本文件
2012/07/12 Javascript
JQuery的ready函数与JS的onload的区别详解
2013/11/21 Javascript
jquery实现简单易懂的图片展示小例子
2013/11/21 Javascript
JavaScript插件化开发教程 (三)
2015/01/27 Javascript
在Node.js中使用HTTP上传文件的方法
2015/06/23 Javascript
json+jQuery实现的无限级树形菜单效果代码
2015/08/27 Javascript
AngularJS实现的select二级联动下拉菜单功能示例
2017/10/25 Javascript
vue项目优化之通过keep-alive数据缓存的方法
2017/12/11 Javascript
VUE 自定义组件模板的方法详解
2019/08/30 Javascript
javascript二维数组和对象的深拷贝与浅拷贝实例分析
2019/10/26 Javascript
vue实现点击出现操作弹出框的示例
2020/11/05 Javascript
[07:59]2014DOTA2叨叨刀塔 林熊猫称被邀请赛现场盛况震撼
2014/07/21 DOTA
Python实现的括号匹配判断功能示例
2018/08/25 Python
Python 时间戳之获取整点凌晨时间戳的操作方法
2020/01/28 Python
Python类如何定义私有变量
2020/02/03 Python
python numpy实现rolling滚动案例
2020/06/08 Python
python的help函数如何使用
2020/06/11 Python
如何用Python绘制3D柱形图
2020/09/16 Python
canvas如何实现多张图片编辑的图片编辑器
2020/03/10 HTML / CSS
苹果音乐订阅:Apple Music
2018/08/02 全球购物
清洁工个人工作总结
2015/03/05 职场文书
商场收银员岗位职责
2015/04/07 职场文书
教师读书笔记
2015/06/29 职场文书
vue 实现上传组件
2021/05/31 Vue.js
使用redis实现延迟通知功能(Redis过期键通知)
2021/09/04 Redis
关于k8s环境部署mysql主从的问题
2022/03/13 MySQL
Linux服务器离线安装 nginx的详细步骤
2022/06/16 Servers