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 相关文章推荐
Python基于DES算法加密解密实例
Jun 03 Python
在Windows系统上搭建Nginx+Python+MySQL环境的教程
Dec 25 Python
Python三种遍历文件目录的方法实例代码
Jan 19 Python
Python 字符串换行的多种方式
Sep 06 Python
PyQt 实现使窗口中的元素跟随窗口大小的变化而变化
Jun 18 Python
Django自带日志 settings.py文件配置方法
Aug 30 Python
对tensorflow 中tile函数的使用详解
Feb 07 Python
关于Python字符编码与二进制不得不说的一些事
Oct 04 Python
python+selenium小米商城红米K40手机自动抢购的示例代码
Mar 24 Python
python 自动刷新网页的两种方法
Apr 20 Python
python 如何用terminal输入参数
May 25 Python
python 安全地删除列表元素的方法
Mar 16 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多线程下载远程多个文件
2013/06/25 PHP
destoon实现调用热门关键字的方法
2014/07/15 PHP
PHP串行化与反串行化实例分析
2016/12/27 PHP
PHP正则+Snoopy抓取框架实现的抓取淘宝店信誉功能实例
2017/05/17 PHP
使用Zttp简化Guzzle 调用
2017/07/02 PHP
PHP+Ajax实现上传文件进度条动态显示进度功能
2018/06/04 PHP
Laravel5.7框架安装与使用学习笔记图文详解
2019/04/02 PHP
JavaScript的parseInt 进制问题
2009/05/07 Javascript
Dreamweaver jQuery智能提示插件,支持版本提示,支持1.6api
2011/07/31 Javascript
JS实现随页面滚动显示/隐藏窗口固定位置元素
2016/02/26 Javascript
jQuery图片轮播实现并封装(一)
2016/12/03 Javascript
Angular.JS中的this指向详解
2017/05/17 Javascript
vue项目中api接口管理总结
2018/04/20 Javascript
vue axios数据请求及vue中使用axios的方法
2018/09/10 Javascript
js使用Promise实现简单的Ajax缓存
2018/11/14 Javascript
为什么说JavaScript预解释是一种毫无节操的机制详析
2018/11/18 Javascript
vue鼠标悬停事件实例详解
2019/04/01 Javascript
js实现右键弹出自定义菜单
2020/09/08 Javascript
element-ui中dialog弹窗关闭按钮失效的解决
2020/09/22 Javascript
Python的Bottle框架的一些使用技巧介绍
2015/04/08 Python
在Python中封装GObject模块进行图形化程序编程的教程
2015/04/14 Python
Python判断中文字符串是否相等的实例
2018/07/06 Python
python抓取搜狗微信公众号文章
2019/04/01 Python
Pycharm 2020最新永久激活码(附最新激活码和插件)
2020/09/17 Python
pandas使用之宽表变窄表的实现
2020/04/12 Python
PHP如何自定义函数
2016/09/16 面试题
大学生毕业自我鉴定范文
2013/09/19 职场文书
大专毕业生自我评价分享
2013/11/10 职场文书
店长岗位的工作内容
2013/11/12 职场文书
2014学习全国两会精神心得体会2000字
2014/03/11 职场文书
投标人廉洁自律承诺书
2014/05/26 职场文书
企业年会祝酒词
2015/08/11 职场文书
学校学期工作总结
2015/08/13 职场文书
教师旷工检讨书
2015/08/15 职场文书
5行Python代码实现一键批量扣图
2021/06/29 Python
MySQL GTID复制的具体使用
2022/05/20 MySQL