API:Data.SqlExpr.TSQLQuery.GetMetadata
Delphi
property GetMetadata: Boolean read FGetMetadata write FGetMetadata default 0;
C++
__property GetMetadata = {default=0};
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
property | published | Data.SqlExpr.pas Data.SqlExpr.hpp |
Data.SqlExpr | TSQLQuery |
Beschreibung
Bestimmt, ob die SQL-Datenmenge zusammen mit den Daten auch Metadaten abruft.
Data.SqlExpr.TSQLQuery.GetMetadata erbt von Data.SqlExpr.TCustomSQLDataSet.GetMetadata. Der folgende Inhalt bezieht sich auf Data.SqlExpr.TCustomSQLDataSet.GetMetadata.
Bestimmt, ob die SQL-Datenmenge zusammen mit den Daten auch Metadaten abruft.
Mit GetMetadata können Sie das Abrufen von Metadaten für ein Datenbankobjekt aktivieren oder deaktivieren. Durch das Setzen von GetMetadata auf False wird die Ausführungsgeschwindigkeit erhöht, weil kein zusätzliches SQL ausgeführt werden muss, um Indexinformationen zu ermitteln. Dadurch könnten jedoch Versuche verlangsamt werden, Daten mit einer Client-Datenmenge zu aktualisieren, die über einen Datenmengen-Provider verknüpft sind, weil der Resolver evtl. kein optimiertes SQL zum Ausführen der Aktualisierung erzeugt..
GetMetadata muss zum Ausführen von Operationen True sein, für die ein Index erforderlich ist. Zu diesen Operationen zählen: das Einrichten von Haupt/Detail-Beziehungen, das Aktualisieren von Daten aus einer Client-Datenmenge, wenn der UpdateMode des Providers nicht upWhereAll ist, und das verzögerte Abrufen von BLOB-Daten. GetMetadata muss True auch für SQL-Abfragen mit Aggregatfunktionen oder GROUP BY-Klauseln oder beide gleichzeitig sein.
Setzen Sie GetMetadata auf False, wenn die Daten nur zum Lesen abgerufen werden.
- Hinweis: Im iOS IBLite-Codefragment ist GetMetadata für TSqlQuery auf False gesetzt, damit die Anzahl der gestarteten Transaktionen beim Öffnen der Datenmenge reduziert wird.