TclientDataSet排序混乱问题

lzniam 2005-05-12 02:47:41
用TclientDataSet执行SQL语句,如 select * from Table order by a desc,b

数据量少时查询的结果是对的: 1,2,3,4……
当数据量很大时,一open之后,数据集的顺序就乱了,显示在表格里成了 3,1,4,2……(问题很偶然十次查询就有三次可以发生这种情况)

为什么会这样,难道必须给数据集建索引字段才行吗(但要求并不总按kmdm排序,所以索引也是不断变的,且索引也不方便按降序排)

大家有碰到过该问题吗,怎么解决的,谢谢!
...全文
98 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Erice 2005-05-12
  • 打赏
  • 举报
回复
clientdataset.indexdefs.addindex()

具体函数忘了,你查查看!!!

可以定义多个字段排序,比在数据库里快!
还有在数据库里使用ORDER BY 影响查询速度!!!
lovend 2005-05-12
  • 打赏
  • 举报
回复
这个排序不光排a ,还排b 呀,是两个排序的结合。

应该排序结果不会错的。
luckyboy97 2005-05-12
  • 打赏
  • 举报
回复
问题应该出在这个里面order by a desc,b
a desc,b升降不一致
aloking 2005-05-12
  • 打赏
  • 举报
回复
TclientDataSet 里面有个属性是排序的

2,496

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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