Delphi ClientDataSet 排序[1]
Delphi ClientDataSet 排序[1]
1、单个字段排序 (索引名称自定义,例如:sSort)
//升序
with ClientDataSet1 do
begin
IndexDefs.Update; //更新
if IndexDefs.IndexOf( 'sSort' )>=0 then DeleteIndex('sSort'); //删除索引
AddIndex('sSort',Column.FieldName, [ixPrimary], Column.FieldName ); //添加索引 升序
IndexName:= 'sSort'; //索引
First; //回到第一行
end;
//降序 ixDescending
with ClientDataSet1 do
begin
IndexDefs.Update;
if IndexDefs.IndexOf( 'sSort' )>=0 then DeleteIndex('sSort');
AddIndex('sSort',Column.FieldName,[ixDescending],Column.FieldName);
IndexName:='sSort';
First;
end;
2、多个排序字段 (例如:Field1,Field2)
with ClientDataSet1 do
begin
IndexDefs.Update;
if IndexDefs.IndexOf( 'sSort' )>=0 then DeleteIndex( 'sSort' );
AddIndex('sSort','Field1, Field2',[],'');
IndexName:='sSort';
First;
end;
with ClientDataSet1 do
begin
IndexDefs.Update;
if IndexDefs.IndexOf( 'sSort' )>=0 then DeleteIndex( 'sSort' );
AddIndex('sSort','Field1,Field2',[],'Field1, Field2');
IndexName:='sSort' ;
First;
end;
TIndexOption参数取值:
TIndexOption = (
ixPrimary, //初级 升序
ixUnique, //唯一值
ixDescending, //降序
ixCaseInsensitive, //不区分大小写
ixExpression, //表达式
ixNonMaintained //不保持
);
TIndexOptions = set of TIndexOption;
创建时间:2021.01.25 更新时间:
博客园 滔Roy https://www.cnblogs.com/guorongtao 希望内容对你有所帮助,谢谢!