如何解决如何使用QSqlQueryModel仅在sqlite的tableview中显示最后两行?
下面是我的示例代码:
db = QSqlDatabase.addDatabase('QSQLITE')
db.setDatabaseName('book.db')
db.open()
model = QSqlQueryModel()
model.setQuery("SELECT * FROM card")
self.tableView.setModel(model)
我正在使用QSqlQueryModel,Qtablevie,Sqlite3,并且能够查看表中的所有行。但是我只想查看表的最后两行,它们是新插入到表中的行。该表没有“ id”字段,并且具有数字和文本字段。这怎么可能? 下面是表格图片:
解决方法
如果要获取指示插入顺序的任何字段的最后2个元素的顺序(在您的情况下为“ rowid”),则必须在SQL命令中使用过滤器,如下所示:
model.setQuery("SELECT * FROM card ORDER BY rowid DESC LIMIT 2")
另一个可能的选择是使用QSortFilterProxyModel过滤表,但是效率较低。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。