Lecture de plusieurs ensembles de résultats

De RAD Studio
Aller à : navigation, rechercher

Remonter à Exécution de procédures stockées qui ne renvoient pas d'ensemble de résultats

Certaines procédures stockées renvoient plusieurs ensembles d'enregistrements. Lorsque vous l'ouvrez, l'ensemble de données ne récupère que le premier ensemble d'enregistrements. Si vous utilisez TSQLStoredProc ou TADOStoredProc, vous pouvez accéder aux autres ensembles d'enregistrements en appelant la méthode NextRecordSet :


var
  DataSet2: TCustomSQLDataSet;
begin
  DataSet2 := SQLStoredProc1.NextRecordSet;
  ...
TCustomSQLDataSet *DataSet2 = SQLStoredProc1->NextRecordSet();

Dans TSQLStoredProc, NextRecordSet renvoie le composant TCustomSQLDataSet qui vient d'être créé et fournit l'accès au prochain ensemble d'enregistrements. Dans TADOStoredProc, NextRecordset renvoie une interface qui peut être affectée à la propriété RecordSet d'un ensemble de données ADO existant. Pour n'importe quelle classe, la méthode renvoie le nombre d'enregistrements de l'ensemble de données renvoyé sous forme d'un paramètre de sortie.

La première fois que vous appelez NextRecordSet, elle renvoie un ensemble de données pour le second ensemble d'enregistrements. Appeler à nouveau NextRecordSet renvoie un troisième ensemble de données, et ainsi de suite jusqu'à ce qu'il n'y ait plus d'ensemble d'enregistrements. Lorsque qu'il n'y a pas de curseur supplémentaire, NextRecordSet renvoie nil.

Voir aussi