pyQT 和 MySQL 或 MSSQL 连接

Tim*_*Tim 1 python mysql sql-server pyqt

经过大量的研究和调查,我决定使用 pyQT4 使用 Eric5 作为编辑器进行 Python 开发。然而,我在尝试让 MySQL 工作时遇到了障碍。QMySQL 驱动程序似乎存在问题。从到目前为止我所看到的讨论来看,唯一的解决方法是安装 pyQT SDK,然后重新编译 MySQL 驱动程序。一个痛苦的过程,我真的不想经历。我实际上更喜欢使用 MS SQL,但我没有找到任何支持 MSSQL 的 pyQT 驱动程序。

所以,我的问题是:将 pyQT 与 mySQL 或 MSSQL 结合使用的最佳方法是什么?

在等待答案的同时,我可能会修改 SQLAlchemy 和 mySQL.Connector 来看看它是否会与 pyQT 共存。

Gar*_*hes 5

如果您更愿意使用 MS SQL,那么在 PyQt 中使用 QSqlDatabase 和 ODBC 驱动程序非常容易。

以下是我正在开发的一个使用 MS SQL 的项目的摘录。

db = QSqlDatabase.addDatabase('QODBC')
#TODO: Add support for trusted connections.
#("Driver={SQLServer};Server=Your_Server_Name;Database=Your_Database_Name;Trusted_Connection=yes;")
db.setDatabaseName('DRIVER={SQL Server};SERVER=%s;DATABASE=%s;UID=%s;PWD=%s;'
                        % (hostname,
                           databasename,
                           username,
                           password))
db.open()
Run Code Online (Sandbox Code Playgroud)

显然,您需要已经设置主机名、数据库名、用户名和密码变量。注释掉的行显示可信连接的连接字符串;这不是我实际上需要尝试的东西,但如果这就是你需要的,它应该可以工作。

打开数据库后,您可以使用 QSqlQuery,就像使用带有 PyQt 驱动程序的 MySql 一样。