pyqt5 mysql 驱动_PyQt5-连接MySQL及QMYSQL driver not loaded错误解决

本文介绍了在使用PyQt5连接MySQL时遇到的QMYSQL driver not loaded错误的解决方法,包括检查Python和MySQL位数匹配、放置libmysql.dll到正确位置,以及解决PyQt5缺少qsqlmysql.dll组件的问题,提供了具体的操作步骤和相关链接。
摘要由CSDN通过智能技术生成

一、连接语句

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值