Récupération d'ensembles de résultats à l'aide de commandes

De RAD Studio
Aller à : navigation, rechercher

Remonter à Utilisation d'objets commande


A la différence des composants TADOQuery, qui exécutent différentes méthodes selon qu'elles renvoient ou non un ensemble de résultats, TADOCommand utilise toujours Execute pour exécuter la commande, qu'elle renvoie ou non un ensemble de résultats. Lorsque la commande renvoie un ensemble de résultats, Execute renvoie une interface de l'interface _RecordSet ADO.

La façon la plus pratique d'utiliser cette interface consiste à l'affecter à la propriété RecordSet d'un ensemble de données ADO.

Par exemple, le code suivant utilise TADOCommand (ADOCommand1) pour exécuter une requête SELECT, qui renvoie un ensemble de résultats. Cet ensemble de résultats est ensuite affecté à la propriété RecordSet d'un composant TADODataSet (ADODataSet1).

with ADOCommand1 do begin
  CommandText := 'SELECT Company, State ' +
    'FROM customer ' +
    'WHERE State = :StateParam';
  CommandType := cmdText;
  Parameters.ParamByName('StateParam').Value := 'HI';
  ADODataSet1.Recordset := Execute;
end;
ADOCommand1->CommandText = "SELECT Company, State ";
ADOCommand1->CommandText += "FROM customer ";
ADOCommand1->CommandText += "WHERE State = :StateParam";
ADOCommand1->CommandType = cmdText;
ADOCommand1->Parameters->ParamByName("StateParam")->Value = "HI";
ADOCommand1->Recordset = ADOCommand1->Execute();

Dès que l'ensemble de résultats est affecté à la propriété Recordset d'un ensemble de données ADO, l'ensemble de données est automatiquement activé et les données sont accessibles.

Voir aussi