FireDAC.Comp.Client.TFDQuery.SQL

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

property SQL: TStrings read GetSQL write SetSQL;

C++

__property SQL;

Propriétés

Type Visibilité  Source Unité  Parent
property published
FireDAC.Comp.Client.pas
FireDAC.Comp.Client.hpp
FireDAC.Comp.Client TFDQuery

Description

Contient le texte de l'instruction SQL à exécuter pour la requête.

FireDAC.Comp.Client.TFDQuery.SQL hérite de FireDAC.Comp.Client.TFDCustomQuery.SQL. Tout le contenu en-dessous de cette ligne se réfère à FireDAC.Comp.Client.TFDCustomQuery.SQL.

Contient le texte de l'instruction SQL à exécuter pour la requête.

Utilisez la propriété SQL pour spécifier la commande SQL sur laquelle une requête effectue l'une des opérations suivantes : Execute / ExecSQL / Open

A la conception, la propriété SQL peut être modifiée en invoquant le dialogue Editeur de requête FireDAC. A cette fin, double-cliquez sur le composant TFDCustomQuery. Le dialogue offre un éditeur qui met en évidence la syntaxe, un constructeur de requêtes, une capacité de test de la requête, et ainsi de suite. 

La propriété SQL peut contenir une commande SQL ou une commande SQL groupée (en mode "batch"), comprenant plusieurs commandes SQL ou un bloc de code dans le langage de programmation du côté serveur. Pour exécuter un script SQL complet, utilisez le composant TFDScript

L'instruction SQL dans la propriété SQL peut aussi contenir les suivants :

  • Marqueurs de paramètres, en respectant la syntaxe du standard SQL-92. Les paramètres sont créés automatiquement et stockés dans la propriété Params, si ResourceOptions.ParamCreate vaut True. Si ParamBindMode vaut pbByName, pour toutes les occurrences du même marqueur, un seul élément est créé dans Params. Si ParamBindMode vaut pbByNumber, un élément est créé pour chaque marqueur.
  • Marqueurs de variables de substitution. Les macros sont créées automatiquement et stockées dans la propriété Macros, si ResourceOptions.MacroCreate vaut True.
  • Séquences d'échappement. Elles permettent l'écriture des commandes SQL indépendantes du SGBD.
  • Substitutions conditionnelles. Elles vous permettent d'étendre une commande SQL conditionnellement, en fonction des attributs définis de l'application.

Pour des détails, voir Prétraitement du texte des commandes

Pour améliorer les performances de l'ajout de larges requêtes SQL à la propriété en utilisant les méthodes TStringList, entourez le code par SQL.BeginUpdate / SQL.EndUpdate

Après avoir rempli la valeur de cette propriété, la collection Param est remplie automatiquement, si ResourceOptions.ParamCreate vaut True.

Exemple

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;

Voir aussi