FireDAC.Comp.Client.TFDCustomCommand.Define
Delphi
function Define(ASchema: TFDDatSManager; ATable: TFDDatSTable = nil; AMetaInfoMergeMode: TFDPhysMetaInfoMergeMode = mmReset): TFDDatSTable; overload;
function Define(ATable: TFDDatSTable = nil; AMetaInfoMergeMode: TFDPhysMetaInfoMergeMode = mmReset): TFDDatSTable; overload;
C++
Firedac::Dats::TFDDatSTable* __fastcall Define(Firedac::Dats::TFDDatSManager* ASchema, Firedac::Dats::TFDDatSTable* ATable = (Firedac::Dats::TFDDatSTable*)(0x0), Firedac::Phys::Intf::TFDPhysMetaInfoMergeMode AMetaInfoMergeMode = (Firedac::Phys::Intf::TFDPhysMetaInfoMergeMode)(0x0))/* overload */;
Firedac::Dats::TFDDatSTable* __fastcall Define(Firedac::Dats::TFDDatSTable* ATable = (Firedac::Dats::TFDDatSTable*)(0x0), Firedac::Phys::Intf::TFDPhysMetaInfoMergeMode AMetaInfoMergeMode = (Firedac::Phys::Intf::TFDPhysMetaInfoMergeMode)(0x0))/* overload */;
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
function | public | FireDAC.Comp.Client.pas FireDAC.Comp.Client.hpp |
FireDAC.Comp.Client | TFDCustomCommand |
Description
Définit la structure de la table DatS.
La méthode Define définit la structure de la table DatS pour le curseur en cours de la commande si la commande est ouverte, ou pour le premier curseur si elle est fermée.
La méthode crée une nouvelle table DatS, si la valeur du paramètre ATable
est égale à nil.
Si la commande SQL est SELECT
et que fiMeta est dans FetchOptions.Items, Define demande alors les champs de la clé primaire pour la table dans la clause FROM
. Enfin, la méthode remplit la liste de colonnes de la table DatS.
Cette méthode est surchargée :
- La première méthode surchargée définit le gestionnaire DatS pour les ensembles de résultats multiples de la commande.
- La deuxième méthode surchargée définit la structure de la table DatS pour le curseur en cours de la commande.
Exemple
var
oTab: TFDDatSTable;
....
ADCommand1.Prepare('select * from MyTab');
oTab := ADCommand1.Define;
ADCommand1.Open;
ADCommand1.Fetch(oTab);
ADCommand1.Close;
// Some time later, after the structure of DB table MyTab have changed.
// For example, field was removed.
ADCommand1.Prepare('select * from MyTab');
oTab := ADCommand1.Define(oTab, mmOverride);
ADCommand1.Open;
ADCommand1.Fetch(oTab);
ADCommand1.Close;