打印 QSqlModel 的 SQL 代码

Print QSqlModel's SQL code

有没有办法打印发送到数据库的 QSqlTableModel/QueryModel 的 SQL 代码? (我正在使用过滤器并想将其用于调试目的)

类似于:

self.model = QSqlTableModel()
self.model.setTable("Person")
print(self.model.sql)     #there is no command like .sql

如果你想获得 SQL 你应该做的第一件事就是获得 QSqlQuery,QSqlTableModel / QueryModel 类 具有 returns 该值的 query() 方法,然后要获取在某些查询中使用的 sql,使用 lastQuery() 方法。

你的情况:

print(self.model.query().lastQuery())