Распечатать код SQL QSqlModel

Есть ли способ напечатать код SQL QSqlTableModel/QueryModel, который отправляется в базу данных? (Я работаю с фильтрами и хотел бы использовать это в целях отладки)

Что-то вроде:

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

1 ответ

Решение

Если вы хотите получить SQL, первое, что вам нужно сделать, это получить QSqlQuery, классы QSqlTableModel / QueryModel имеют метод query(), который возвращает это значение, а затем для получения sql, используемого в каком-либо запросе, используется метод lastQuery().,

В твоем случае:

print(self.model.query().lastQuery())
Другие вопросы по тегам