查看完整版本: [-- QSqlTableModel的setQuery --]

QTCN开发网 -> Qt基础编程 -> QSqlTableModel的setQuery [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

gardenhill 2017-09-05 12:19

QSqlTableModel的setQuery

使用setQuery设置order by 语句无效,是啥原因呢.

QSqlQuery query(QString("select rowid,* from %1").arg(tableName()),database());
    setQuery(query);
就可以读取到rowid, 但是使用order by 按照日期和时间排序就无效了.

alexltr 2017-09-06 22:39
“无效“是指rowid不按顺序吗?使用子查询应该可以解决。
这种问题在网上搜一下应该就可以找到答案。

gardenhill 2017-09-08 17:43
不是rowid排序,QSqlQuery query(QString("select rowid,* from %1 order by Date,Time").arg(tableName()),database());
根本就不能按时间排序.
是这个意思.
我用SQl的工具是可以排序的.

alexltr 2017-09-08 23:29
哦. 那会不会跟QTableView的sorting有关系?

gardenhill 2017-09-09 11:04
我没有打开tableview的sorting,默认是不打开的,所以很疑惑,目前就只能用setSort按照一列排序,是否是sqltablemodel的bug呢?


查看完整版本: [-- QSqlTableModel的setQuery --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled