FireDAC.Comp.Client.TFDQuery.Indexes

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

property Indexes: TFDIndexes read FIndexes write SetIndexes stored IsIS;

C++

__property Indexes;

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
property published
FireDAC.Comp.Client.pas
FireDAC.Comp.Client.hpp
FireDAC.Comp.Client TFDQuery

Beschreibung

Listet alle Client-Indizes auf, die für die Datenmenge gelten.

FireDAC.Comp.Client.TFDQuery.Indexes erbt von FireDAC.Comp.DataSet.TFDDataSet.Indexes. Der folgende Inhalt bezieht sich auf FireDAC.Comp.DataSet.TFDDataSet.Indexes.

Listet alle Client-Indizes auf, die für die Datenmenge gelten.

Mit Indexes definieren Sie clientseitige Datensichten für die Datensätze der Datenmenge. Indexes sind eine Kollektion der TFDIndex-Objekte. Jedes Objekt daraus definiert optional Folgendes:

Die einzelnen Indizes sind nicht nur die Sortier- und Filterdefinitionen. Während die Anwendung Daten abruft oder bearbeitet, verwaltet FireDAC für jeden aktiven Index eine konsistente Sicht der Daten. Dadurch wird zusätzlicher Overhead produziert, ermöglicht aber, dass ohne Verzögerung zwischen Indizes gewechselt werden kann.

Setzen Sie die Eigenschaft Selected einer Sicht auf True oder die Eigenschaft IndexName der Datenmenge auf den Sichtnamen, damit die Sicht zur aktuellen wird.

Hinweis: Die Eigenschaft Active der Sicht muss auf True gesetzt sein, damit sie beibehalten wird.

Die Datenmenge behält Indexes-Sichten bei, wenn IndexesActive True ist. Wenn in einer Anwendung Stapel-Aktualisierungen der Datenmenge vorgenommen werden müssen, dann setzen Sie vor der Aktualisierung IndexesActive auf False und geben nach der Aktualisierung wieder den Originalwert an. Siehe auch die Methoden BeginBatch und EndBatch.

Durch Setzen von IndexFieldNames wird der Indexes-Kollektion kein TFDIndex-Objekt hinzugefügt. Wenn Sie IndexDefs vor dem Öffnen der Datenmenge festlegen, wird Indexes geleert und mit den IndexDefs-Informationen gefüllt. Daher gibt es zwei Alternativen: Verwendung von IndexDefs oder von Indexes. Verwenden Sie Indexes, da Sie damit eine größere Flexibilität erhalten.

Einige der Navigationsmethoden, wie Locate, LocateEx, Lookup, LookupEx, SetRange, verwenden Indizes zum Optimieren ihrer Operationen.

Die Sortier- und Filterausdrücke in Indexes unterstützen die erweiterte Ausdruckssyntax.

Beispiel

with FDMemTable1.Indexes.Add do begin
  Name := 'by_name';
  Fields := 'NAME;DT';
  Active := True;
end;
with FDMemTable1.Indexes.Add do begin
  Name := 'by_payments';
  Expression := 'sum(sal + bonus)';
  Filter := 'dep_id is not null;
  Active := True;
end;
FDMemTable1.IndexesActive := True;
FDMemTable1.IndexName := 'by_name';

Siehe auch

Beispiele