PyQt QSqlDatabase:未加载QMYSQL驱动程序

时间:2017-06-26 05:49:45

标签: python mysql qt pyqt

我正在尝试使用Python 3.6上的PyQt5连接到MySQL数据库,用于64位Windows。当我调用QSqlDatabase.addDatabase('MYSQL')并运行我的实用程序时,它会显示以下错误消息:

QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QP SQL QPSQL7

这让我感到困惑,因为根据错误消息,加载了QMYSQL驱动程序。我通过默认安装程序安装了PyQt,因此应该安装MySQL插件。有没有其他人遇到过这个问题,或者有人知道这个问题的原因吗?

2 个答案:

答案 0 :(得分:1)

它说驱动程序可用,但你需要在Qt源代码和Mysql库上重新构建一个新的Mysql驱动程序。

答案 1 :(得分:-1)

与Windows 10相同的问题。 我没有对在Windows 10中使用QMYSQL驱动程序进行过多调查,但这是一个解决方法:

  • 使用QODBC驱动程序(QSqlDatabase.addDatabase('QODBC')
  • db.setDatabaseName(My_ODBC_source)

" My_ODBC_source"必须创建。在Windows 10上:

  1. 安装Mysql ODBC 5.x ANSI驱动程序(32位)(download
  2. 创建一个名为" My_ODBC_source"的新用户或机器ODBC数据源; (参见MySQL docs)你必须提供ip地址或mysql服务器名称,用户名,密码。所以它不必在你的pyqt代码中提供。