标题:QSqlTableModel的setQuery
作者:gardenhill
日期:2017-09-05 12:19
内容:
使用setQuery设置order by 语句无效,是啥原因呢.
QSqlQuery query(QString("select rowid,* from %1").arg(tableName()),database());
setQuery(query);
就可以读取到rowid, 但是使用order by 按照日期和时间排序就无效了.
#1 [alexltr 09-06 22:39]
“无效“是指rowid不按顺序吗?使用子查询应该可以解决。
这种问题在网上搜一下应该就可以找到答案。
#2 [gardenhill 09-08 17:43]
不是rowid排序,QSqlQuery query(QString("select rowid,* from %1 order by Date,Time").arg(tableName()),database());
根本就不能按时间排序.
是这个意思.
我用SQl的工具是可以排序的.
#3 [alexltr 09-08 23:29]
哦. 那会不会跟QTableView的sorting有关系?
#4 [gardenhill 09-09 11:04]
我没有打开tableview的sorting,默认是不打开的,所以很疑惑,目前就只能用setSort按照一列排序,是否是sqltablemodel的bug呢?