QSqlRelationalTableModel 提交提示“ QSqlError(-1, "Parameter count mismatch", "") ”

时间:2021-04-13 10:45:16
大家好,通过QSqlRelationalTableModel 定义的变量model进行数据的读写操作,数据库打开后可以获取数据select,
也可以正常提交>submitAll,
如果中间做了数据库关闭操作close,然后马上打开open,
则model就只能跟新数据select,而且正常更新,但不能提交,提示时就提示:“ QSqlError(-1, "Parameter count mismatch"”.
这是什么原因?是因为数据库关闭时释放了所有资源吗?
上面操作简单,是因为做了简化处理,只有打开关闭,更新和提交,
但在我们项目中,因为不知道什么时候是否关闭了数据库,或者有其他操作?
导致同样报该提示,就不知道什么原因了,原来出现过,是因为关闭过数据库,后来改了些,是不是没有改全?
如果是,为什么能跟新?是不是没有可写权限?怎么取得?

3 个解决方案

#1


无解?
尝试了新打开数据库后重新得到Model,然后指针交换,可以了,
但这样和每次都重新申请有什么区别吗?

#2


没办法,关闭数据库后所有MODEL已经失去了科协权限。

#3


找到所有关闭数据库的地方找到,判断后在关闭吧!

#1


无解?
尝试了新打开数据库后重新得到Model,然后指针交换,可以了,
但这样和每次都重新申请有什么区别吗?

#2


没办法,关闭数据库后所有MODEL已经失去了科协权限。

#3


找到所有关闭数据库的地方找到,判断后在关闭吧!