PyQt5连接MYSQL时显示Driver not loaded解决方案

在第一次用PyQt5的 QSqlDatabase.addDatabase 连接mysql的时候,可能会出现Driver not loaded的情况,如下:


from PyQt5.QtSql import QSqlQuery, QSqlDatabase
from PyQt5.QtWidgets import QApplication
import sys

app = QApplication(sys.argv)

try:
    db = QSqlDatabase.addDatabase('QMYSQL')
    db.setHostName(ip)
    db.setPort(3306)
    db.setDatabaseName('cat')
    db.setUserName('root')
    db.setPassword('password')
    if db.open():
        print("打开啦")
    else:
        print(db.lastError().text())


代码没有错误,可是IDE报错!




因为缺少了MySql的驱动,所以连接MySql数据库会产生错误!

这个时候应该...


一、找到Mysql Server的安装目录内的lib文件夹,例如我的是C:\Program Files\MySQL\MySQL Server 5.6\lib

拷贝里面的libmysql.dll文件..(注意:python的版本如果是32位的,那就必须要找32位的libmysql文件,不然待会进行了第二步也会报Driver not loaded错误,今晚就被坑了,哭唧唧)。


二、把第一步拷贝的libmysql.dll文件放到PyQt5/Qt的bin目录下,例如我的是:C:\Users\MollyNeko\AppData\Local\Programs\Python\Python35-32\Lib\site-packages\PyQt5\Qt\bin


三、如果libmysql.dll的位数(32/64)是小于python的位数,那么现在就能成功连接数据库啦!运行刚才的代码:




连接成功!


你可能感兴趣的:(PyQt5连接MYSQL时显示Driver not loaded解决方案)