往QSQLITE数据库不断地添加数据时,一开始正常,一段时间后就出错。我用QSqlTableModel添加数据,怎么解决?

sniper2011 2013-08-21 11:36:49
我用的QSQLITE数据库,向里面不断的写数据,采用QSqlTableModel的insertRow()和setData()向数据库写数据的方式,并且附带表格显示。
一开始正常,运行一段时间后大概在第256和512个数据的时候会出错,表格上显示的数据就卡在这个位置,还会出现“column id is not unique Unable to fetch row”这种数据库的错误。
这什么情况,怎么解决,谢谢
...全文
340 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
QQ_278397935 2015-08-28
  • 打赏
  • 举报
回复
如何解决~?
sniper2011 2013-08-28
  • 打赏
  • 举报
回复
这是因为在用rowCount()来获取行数的时候,当数据超过256时,rowCount()获取的行数是错误的。
sniper2011 2013-08-26
  • 打赏
  • 举报
回复
引用 1 楼 mashuangwei 的回复:
你数据库表中的column id是不能重复的,但你在添加数据时这个id你有重复的,所以会报错。你检查一下是否重复添加,256到512数据肯定有重复的了。
我用rowCount()来获取行数,然后再添加数据的。一开始没有问题,说明id正常,为什么运行到第256和512个数据的时候,id就重复了呢。
Andy520890802 2013-08-23
  • 打赏
  • 举报
回复
你数据库表中的column id是不能重复的,但你在添加数据时这个id你有重复的,所以会报错。你检查一下是否重复添加,256到512数据肯定有重复的了。

16,211

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧