FireDAC.Comp.Client.TFDCustomStoredProc.ExecFunc

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

function ExecFunc: Variant; overload;
function ExecFunc(const AProcName: String): Variant; overload;
function ExecFunc(const AProcName: String; const AParams: array of Variant): Variant; overload;
function ExecFunc(const AProcName: String; const AParams: array of Variant;  const ATypes: array of TFieldType): Variant; overload;

C++

System::Variant __fastcall ExecFunc()/* overload */;
System::Variant __fastcall ExecFunc(const System::UnicodeString AProcName)/* overload */;
System::Variant __fastcall ExecFunc(const System::UnicodeString AProcName, const System::Variant *AParams, const int AParams_High)/* overload */;
System::Variant __fastcall ExecFunc(const System::UnicodeString AProcName, const System::Variant *AParams, const int AParams_High, const Data::Db::TFieldType *ATypes, const int ATypes_High)/* overload */;

Propriétés

Type Visibilité  Source Unité  Parent
function public
FireDAC.Comp.Client.pas
FireDAC.Comp.Client.hpp
FireDAC.Comp.Client TFDCustomStoredProc


Description

Exécute une fonction stockée.

Cette méthode est surchargée :

  • La première méthode surchargée exécute une méthode stockée dans la session SGBD et renvoie sa valeur.
var
  v: Variant;
...
FDStoredProc1.StoredProcName := 'myfunc';
v := FDStoredProc1.ExecFunc;
  • La seconde méthode surchargée exécute la fonction stockée spécifiée dans la session SGBD et renvoie sa valeur. AProcName peut inclure un nombre de surcharge après ';'.
var
  v: Variant;
...
v := FDStoredProc1.ExecFunc('myfunc');
  • La troisième méthode surchargée exécute la fonction stockée spécifiée, affecte des valeurs de paramètres pour les arguments de la fonction stockée et renvoie sa valeur. Les valeurs de AParams sont affectées aux paramètres d'entrée.
var
  v: Variant;
...
v := FDStoredProc1.ExecFunc('myfunc;2', [100, 'qweqwe']);
  • La quatrième méthode surchargée exécute la fonction stockée spécifiée, affecte les types de données et les valeurs des paramètres pour les arguments des procédures stockées et renvoie sa valeur.
var
  v: Variant;
...
v := FDStoredProc1.ExecFunc('myfunc', [100, 'qweqwe'], [ftInteger, ftWideString]);

Avant d'appeler ExecFunc, affectez des parties de nom supplémentaires des fonctions stockées aux propriétés CatalogName, SchemaName, PackageName, Overload. Dans le cadre de l'appel de ExecFunc, l'instruction SQL est construite en appelant la procédure stockée.  Utilisez ResourceOptions.CmdExecMode pour contrôler le mode d'exécution asynchrone et ResourceOptions.CmdExecTimeout pour définir le temps d'exécution maximal de la fonction stockée. Après ce temps, l'exécution de la fonction stockée sera annulée et une exception sera déclenchée. 

Pour annuler l'exécution de la fonction stockée, utilisez TFDAdaptedDataSet.AbortJob.  Avant l'exécution de la fonction stockée, l'événement BeforeExecute est déclenché. Si le serveur renvoie une erreur d'exécution de la fonction stockée, FireDAC déclenche une exception. Elle peut être analysée dans l'événement OnError. A la fin de l'exécution de la fonction stockée, l'événement AfterExecute est déclenché. 

Voir aussi