Datasnap.DBClient.TCustomClientDataSet.AddIndex
Delphi
procedure AddIndex(const Name, Fields: string; Options: TIndexOptions;
const DescFields: string = ''; const CaseInsFields: string = '';
const GroupingLevel: Integer = 0);
C++
void __fastcall AddIndex(const System::UnicodeString Name, const System::UnicodeString Fields, Data::Db::TIndexOptions Options, const System::UnicodeString DescFields = System::UnicodeString(), const System::UnicodeString CaseInsFields = System::UnicodeString(), const int GroupingLevel = 0x0);
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
procedure function |
public | Datasnap.DBClient.pas Datasnap.DBClient.hpp |
Datasnap.DBClient | TCustomClientDataSet |
説明
クライアントデータセットに新しいインデックスを作成します。
AddIndex メソッドを呼び出すと,クライアントデータセットに対して新しいインデックスを作成できます。
Name パラメータは新しいインデックスの名前です。
Fields は,インデックスに入れるセミコロンで区切られた項目のリストです。
Options は,最大 2 つの TIndexOptions 値を含めることができる値のセットです(空でもかまいません)。このセットで有効なメンバーは,ixDescending(アルファベットの降順でインデックスをソート)および ixCaseInsensitve(大文字と小文字を区別しないでインデックスをソート)です。
警告: これ以外の TIndexOptions 値を含むインデックスを作成しようとすると,AddIndex は例外を生成します。
DescFields は,セミコロンで区切られた項目名のリストです。一部の項目では昇順,ほかの項目では降順でソートされたインデックスを作成するには,ixDescending を含む Options 値のかわりに DescFields を使用します。DescFields で指定されたすべての項目は,降順でソートされます。
CaseInsFields は,セミコロンで区切られた項目名のリストです。一部の項目では大文字と小文字を区別せず,ほかの項目では区別してソートされたインデックスを作成するには,ixCaseInsensitve を含む Options 値のかわりに CaseInsFields を使用します。CaseInsFields で指定されたすべての項目は,大文字と小文字を無視してソートされます。
GroupingLevel は,インデックスによってサポートされるデフォルトのグループ化レベルです。クライアントデータセットがこのインデックスを使用する場合,グループ化情報は,インデックスの GroupingLevel 項目の値を上限として定義された下位グループで自動的に使用可能になります(クライアントデータセットが保持された集計を使用している場合,さらに深くネストされたグループに関する情報は,インデックスのデフォルト値より大きいグループ化レベルで集計が定義されたときに使用可能になります)。GroupingLevel は,0 からインデックスの項目数までのいずれかの値に設定できます。
メモ: SaveToFile を使用する場合,AddIndex によって追加されたインデックスはデータと一緒に保存されません。クライアントデータセットを閉じると,インデックスは残りません(つまり,クライアントデータセットを再び開いたときには失われています)。データセットを閉じたときに AddIndex を呼び出すことはできません。
ヒント: AddIndex で追加されたインデックスを使用すると,保持された集計をサポートできます。