Windows环境下 PyQt5 如何安装MySql驱动 (PyQt5连接MYSQL时显示Driver not loaded解决方案)
参考文章:
https://blog.csdn.net/qq_38198744/article/details/80261695
前文说过如何在Ubuntu环境下 为PyQt5 安装MySql驱动, 这里面主要说的是如何在Windows环境下安装MySql驱动。
# -*- coding: utf-8 -*- '''
【简介】
PyQt5中 处理database 例子 ''' import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtSql import QSqlDatabase class ExecDatabaseDemo(QWidget): def __init__(self, parent=None):
super(ExecDatabaseDemo , self).__init__(parent) #self.db = QSqlDatabase.addDatabase('QSQLITE')
#self.db.setDatabaseName('./db/database.db')
# 打开数据库
#self.db.open() self.con2 = QSqlDatabase.addDatabase('QMYSQL')
self.con2.setHostName("67.209.xxx.xxx")
self.con2.setDatabaseName("mysql")
self.con2.setUserName("root")
self.con2.setPassword("xxxxxxxx")
a=self.con2.open()
print(a) def closeEvent(self, event):
# 关闭数据库
self.con2.close() if __name__ == '__main__':
app = QApplication(sys.argv)
demo = ExecDatabaseDemo()
demo.show()
sys.exit(app.exec_())
以上是具体代码,运行后总是打印 False, 这说明数据库是没有连接上的。
在windows环境下我的编程环境中该代码运行并不会提示任何的错误,这一点和Linux环境下还是有所区别的。
经过在网上查找资料发现只要找到 文件 libmySQL.dll ,这个动态库就可以搞定了, 一般安装MySql 的 可以在电脑上找到,默认的一般是C:\Program Files\MySQL\MySQL Server 5.6\lib 拷贝里面的libmysql.dll文件
python的版本如果是32位的,那就必须要找32位的libmysql文件
python的版本如果是64位的,那就必须要找64位的libmysql文件
最后一步:
把拷贝的libmysql.dll文件放到PyQt5/Qt的bin目录下,例如我的是:
C:\Users\devil\AppData\Local\Programs\Python\Python35\Lib\site-packages\PyQt5\Qt\bin
再次运行数据库连接代码,发现可以正确连接了。
Windows环境下 PyQt5 如何安装MySql驱动 (PyQt5连接MYSQL时显示Driver not loaded解决方案)的更多相关文章
- python MySQLdb在windows环境下的快速安装
python MySQLdb在windows环境下的快速安装.问题解决方式 使用python访问mysql,需要一系列安装 linux下MySQLdb安装见 Python MySQLdb在Linux下 ...
- Windows环境下MongoDB的安装与配置
MongoDB是一种高性能的文档型数据库,现介绍一下在Windows环境下MongDB的安装与配置 获取MongoDB 打开官方网站 www.mongodb.org,找到页面右上解的DownLoad链 ...
- Windows环境下Android Studio安装和使用教程
Windows环境下Android Studio安装和使用教程 来源: http://www.cnblogs.com/liuhongfeng/archive/2015/12/30/5084896.ht ...
- Redis学习——Windows环境下Redis的安装(二)
一.说明 之前介绍了Linux环境下Redis的安装,这次介绍一下Windows环境下Redis的安装,首先要讲的是,Redis官方只支持Linux,还好 Microsoft Open Tech gr ...
- Windows环境下python的安装与使用
Windows环境下python的安装与使用 一.python如何运行程序 首先说一下python解释器,它是一种让其他程序运行起来的程序.当你编写了一段python程序,python解释器将读取程序 ...
- Windows环境下使用.bat安装和卸载服务
一.Windows环境下使用.bat安装和卸载服务 win7环境 例子中“”Valwell.Dms.HttpService.exe“”为服务程序名称 安装服务 %SystemRoot%\Microso ...
- 117、python MySQLdb在windows环境下的快速安装、问题解决方式
使用Python访问MySQL,需要一系列安装 Linux下MySQLdb安装见 Python MySQLdb在Linux下的快速安装 http://blog.csdn.NET/wklken/arti ...
- Redis在windows环境下ThinkPHP的安装和使用
1.Redis概述: 2.Redis在windows环境下的安装: 下载地址:https://github.com/dmajkic/redis/downloads,选取其中一个zip压缩包:
- Android 开发之Windows环境下Android Studio安装和使用教程(图文详细步骤)
鉴于谷歌最新推出的Android Studio备受开发者的推崇,所以也跟着体验一下. 一.介绍Android Studio Android Studio 是一个Android开发环境,基于Intel ...
随机推荐
- PAT 1112 Stucked Keyboard[比较]
1112 Stucked Keyboard(20 分) On a broken keyboard, some of the keys are always stucked. So when you t ...
- 通过生成器yield实现单线程的情况下实现并发运算效果(异步IO的雏形)
一.协程: 1.生成器只有在调用时才会生成相应的数据 2.调用方式有 " str__next__.() str.send() ", 3.并且每调用一次就产生一个值调用到最后一个 ...
- Frame 框架的创建
Qt 创建Frame框架的例子: QFrame * frm = new QFrame(this); //创建一个框架 frm->setFrameStyle(QFrame::StyledPanel ...
- link标签 rel="stylesheet"
首先,link标签是用于当前文档引用外部文档的,其次,这个标签的rel属性用于设置对象和链接目的间的关系,说白了就是指明你链进来的对象是个什么东西的,具体的值及其所表示的关系如下:Alternate: ...
- 一次org.springframework.jdbc.BadSqlGrammarException ### Error querying database Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException问题排查过程
先说结论: 因为在表设计中有一个商品描述字段被设置为desc,但desc是mysql中的关键字,如select id,name,desc,price from product;这条sql语句在查询时的 ...
- Qt多线程同步总结
1.QMutex QMutex mutex; void func() { mutex.lock(); ........ mutex.unlock(); } 2.QMutex联手QMutex ...
- 按月、按日进行数据统计的Mysql语句
<select id="getCustomerTJByUser" parameterType="map" resultType="map&quo ...
- maven nexus私服搭建
1. 下载 wget http://download.sonatype.com/nexus/oss/nexus-2.12.0-01-bundle.tar.gz 2. 解压 tar zxvf nexus ...
- Linux系统网络设备启动和禁止“ifconfig eth0 up/down”命令的跟踪
前面文章讲了Linux系统的ethtool框架的一些东西,是从用户空间可以直观认识到的地方入手.同样,本文从Linux系统绝大部分人都熟悉的“ifconfig eth0 up”命令来跟踪一下此命令在内 ...
- HDU6447 网络赛 YJJ's Salesman(DP + 线段树)题解
思路:若用dp[i][j]表示走到(i,j)的最大值,那么dp[i][j] = max(dp[i - 1][j],dp[i][j - 1],dp[i - 1][j - 1] + v),显然O(n^2) ...