对TClientDataSet中的数据进行排序 可以用索引嘛,你只要设TclientDataset中的indexfieldnames属性就可以了。如你要按 "BH" 字段进行排序那么就 Clientdataset1.indexfieldnames:='bh';就可以以。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以通过动态建立索引进行,AddIndex,只存在于内存中。 To cjf: 你可不可以说的详细一点? 我有预感,你的答案将是极为有用的。这50大洋注定属于你。 但是,你能否说的详细一点呢? with ClientDataset1 dobegin Close; CommandText:='select * from table order by FieldName' Open;end; 我同意saoren的观点,我认为这是最优的方法。不过你要保证你的应用服务器端的datasetprovider(数据提供者)的potions中的pAllowcommandText属性为True.建议:尽量使用Sql编写数据库程序。 开个玩笑,这50分应该是我和sanren共同分享吧。呵呵! 升序select * from table order by Fieldname ASC;降序select * from table order by fieldname DESC; 问一个问题,如果我的clientdataset不是通过Provider提供数据的,而是采用独立的cds文件加载的,那么commandtext不就没法用了吗?这种情况下,如何作YIYU的方法是可以的,但是只能作升序,不能作降序,怎么办? 对不起,开始我不太清楚你是这样的结构,但这样应该是可以的,你试一下:with clientdataset1 do with IndexDefs do begin Clear; with AddIndexDef do begin Name := 'Fld1Indx'; Fields := 'Field1'; Options := [ixdescending]; //降序 end; end; 在取得数据后,加入索引(是建在内存中的)ClientDataSet1.AddIndex('a','yourfield1',[],'','',0);ClientDataSet1.AddIndex('b','yourfield2',[],'','',0);ClientDataSet1.AddIndex('c','yourfield3',[],'','',0);然后就可以指定ClientDataSet1的indexName属性对数据进行排序了:ClientDataSet1.IndexName='a'; 程序自已复制自已(高分送)急 关于dbgrid的排序 如何保存多個熱鍵,並且在Form建立的時候注冊多個熱鍵?(可能有些難。。。) 各位给点意见,小弟做了一个卖书网站 关于delphi7注册的问题!一定要注册吗? 请教 键盘 激发窗体弹出的问题??? 关于数据库操作中的一些问题!请各位高手指教!先谢谢了! 怎样快速精通dephi 毕业学什么好?找工作让人头痛!谁帮我推荐一下? 请教高手,可有方法隐藏STRINGGRID中的指定行?设置行高的方法会把GRID线挡住,用数组又有点麻烦。 关于类编程的求助! 关于RICHEDIT、MEMO和FINDTEXT的一个问题??
你可不可以说的详细一点?
我有预感,你的答案将是极为有用的。这50大洋注定属于你。
但是,你能否说的详细一点呢?
begin
Close;
CommandText:='select * from table order by FieldName'
Open;
end;
不过你要保证你的应用服务器端的datasetprovider(数据提供者)的potions中的pAllowcommandText属性为True.建议:尽量使用Sql编写数据库程序。
select * from table order by Fieldname ASC;
降序
select * from table order by fieldname DESC;
独立的cds文件加载的,那么commandtext不就没法用了吗?
这种情况下,如何作YIYU的方法是可以的,但是只能作升序,不能作降序,怎么办?
with clientdataset1 do
with IndexDefs do
begin
Clear;
with AddIndexDef do begin
Name := 'Fld1Indx';
Fields := 'Field1';
Options := [ixdescending]; //降序
end;
end;
ClientDataSet1.AddIndex('a','yourfield1',[],'','',0);
ClientDataSet1.AddIndex('b','yourfield2',[],'','',0);
ClientDataSet1.AddIndex('c','yourfield3',[],'','',0);
然后就可以指定ClientDataSet1的indexName属性对数据进行排序了:
ClientDataSet1.IndexName='a';