FireDAC.Comp.Client.TFDCustomQuery.SQL
Delphi
property SQL: TStrings read GetSQL write SetSQL;
C++
__property System::Classes::TStrings* SQL = {read=GetSQL, write=SetSQL};
Inhaltsverzeichnis
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
property | public | FireDAC.Comp.Client.pas FireDAC.Comp.Client.hpp |
FireDAC.Comp.Client | TFDCustomQuery |
Beschreibung
Enthält den Text der SQL-Anweisung, die von der Abfrage ausgeführt werden soll.
Mit der Eigenschaft SQL geben Sie die SQL-Anweisung an, die von einer Abfrage ausgeführt (Execute)/ExecSQL/geöffnet (Open) wird.
Beim Entwurf kann die Eigenschaft SQL durch Aufrufen des Dialogfeldes FireDAC-Abfrageeditor bearbeitet werden. Doppelklicken Sie dazu auf die TFDCustomQuery-Komponente. Das Dialogfeld bietet einen Syntaxhervorhebungs-Editor, einen Abfragegenerator, die Möglichkeit, die Abfrage zu testen, usw.
Die Eigenschaft SQL kann eine SQL-Anweisung oder eine SQL-Stapelanweisung enthalten, die aus mehreren SQL-Anweisungen oder einem Codeblock, der in der Server-Programmiersprache erstellt wurde, besteht. Mit der TFDScript-Komponente können Sie ein SQL-Skript mit vollem Funktionsumfang ausführen.
Die SQL-Anweisung in der Eigenschaft SQL kann auch Folgendes enthalten:
- Parametermarker, die den Standardkonventionen der SQL-92-Syntax entsprechen. Parameter werden automatisch erstellt und in der Eigenschaft Params gespeichert, wenn ResourceOptions.ParamCreate den Wert True hat. Wenn ParamBindMode den Wert
pbByName
hat, dann wird ein einziges Element in Params für alle Vorkommen desselben Markers erstellt. Wenn ParamBindMode den WertpbByNumber
hat, dann wird ein Element für jeden Marker erstellt. - Marker für Substitutionsvariablen. Makros werden automatisch erstellt und in der Eigenschaft Macros gespeichert, wenn ResourceOptions.MacroCreate den Wert True hat.
- Escape-Sequenzen. Ermöglichen das Schreiben von DBMS-unabhängigen SQL-Anweisungen.
- Bedingte Substitutionen. Ermöglichen das bedingte Erweitern der SQL-Anweisung, abhängig von in der Anwendung definierten Attributen.
Einzelheiten dazu finden Sie unter Vorverarbeiten von Anweisungstext.
Um die Performance beim Hinzufügen von großen SQL-Abfragen zu der Eigenschaft mit Hilfe der Methoden TStringList zu steigern, schließen Sie diesen Code in SQL.BeginUpdate / SQL.EndUpdate ein.
Nach dem Füllen dieses Eigenschaftswerts wird die Param
-Kollektion automatisch gefüllt, wenn ResourceOptions.ParamCreate
den Wert True hat.
Beispiel
FDQuery1.SQL.BeginUpdate;
try
FDQuery1.SQL.Add('SELECT ...');
FDQuery1.SQL.Add('...');
FDQuery1.SQL.Add('...');
FDQuery1.SQL.Add('WHERE ID = :ID');
finally
FDQuery1.SQL.EndUpdate;
end;
FDQuery1.ParamByName('ID').AsInteger := 100;
FDQuery1.Open;