QSqlrelationalTableModel.SubmitAll()返回错误

时间:2017-10-24 10:34:54

标签: pyqt4 postgresql-9.4

我正在研究postgreSQL 9.5,QT4和Python2。

我使用以下代码将PostgreSQL查询中的数据带到了QTableView:

self.nomtable = resultQuery
 if not self.nomtable:
    QtGui.QMessageBox.warning(self, 'Alerte', u'Pas de données pour ce salarié et cette année')
 self.model = QtSql.QSqlRelationalTableModel(self, self.db)
 self.model.setEditStrategy(QtSql.QSqlTableModel.OnManualSubmit)
 self.ui.tbv_suivtemp.setModel(self.model)
 self.ui.tbv_suivtemp.setItemDelegate(QtSql.QSqlRelationalDelegate(self.ui.tbv_suivtemp))
 self.ui.tbv_suivtemp.setSortingEnabled(True)
 self.model.setQuery(query_rempl_suivemp)
 self.model.select()

完美无缺:查询中的数据显示在QTableView中。

但现在,如果用户修改单元格中的数字并按下按钮,我希望在模型中输入新数据,然后将其插入到我的数据库中。

我的代码就是这样做的:

self.ui.btn_okannul.accepted.connect(self.sauvModifs)

def sauvModifs(self):
    self.model.submitAll()
    erreur = self.model.lastError().text()
    print erreur

现在,错误是:

ERROR:  syntax error on or near « = »
LIGNE 1 : PREPARE qpsqlpstmt_5 AS UPDATE  SET "juillet"=$1 WHERE "sp_i...
                                                       ^
(42601) QPSQL: Impossible to prepare the query

所以,这些是我的问题:

  • 我怎么能收到整个错误消息?
  • 错误接缝发生在submitAll()方法中,而不是在我的代码中。我该怎么调试呢?

0 个答案:

没有答案