前文说过如何在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解决方案)_sql


再次运行数据库连接代码,发现可以正确连接了。

Windows环境下  PyQt5 如何安装MySql驱动     (PyQt5连接MYSQL时显示Driver not loaded解决方案)_PyQt5可视化_02