有没有一种方法可以使用PyQt5和QMYSQL或QMYSQL3驱动程序来实现事务

时间:2019-08-12 15:31:44

标签: mysql pyqt5

尝试使用与MYSQL数据库的PyQt5 QSqlDatabase连接来实现事务。两种可用的驱动程序-QMYSQL和QMYSQL3都可以运行,但是都不支持事务(db.driver()。transaction(0)返回False。是否有可用的驱动程序支持MYSQL事务?

要更新两个表的内部联接查询,我发现MYSQL不支持此操作类型。我的下一个尝试是在一个事务中包含的两个查询中设置更新-MYSQL支持该更新,以发现可用的驱动程序不支持事务。 到目前为止,我只尝试加载两个可用的驱动程序。

我想一种方法是使用Mysql连接器,但是我担心这可能会引起与PyQt5的兼容性问题

我能够部分解决此问题,因为该问题涉及MSQL不支持联接表更新。我错了,这仅仅是我代码中的一个错误。我包含一个额外的绑定值,并生成了一个不太清晰的错误消息“未提供绑定值,QMYSQL3无法运行查询”或类似的消息。只要匹配边界值,它就会表现完美。

尽管如此,我仍然需要弄清楚如何在这种环境下实现事务。我当然必须使用它们。暂时,我只预见到:创建自定义Qt自定义驱动程序-复杂-;对于需要事务的所有操作,请打开与数据库的Mysql.connector连接。 -不太漂亮;尝试将PyQt5 GUI与通过MYSQL进行的数据库连接一起使用-看来是这样。记录不足,可能很复杂。希望已经有一个用于MySQL的Qt驱动程序。太好了。

0 个答案:

没有答案