複数の結果セットの取得
一部のストアド プロシージャは複数のレコード セットを返します。データセットを開いたときに取得されるのは、最初のレコード セットだけです。TSQLStoredProc または TADOStoredProc を使用している場合には、次のように NextRecordSet メソッドを呼び出すと、他のレコード セットにアクセスできます。
var DataSet2: TCustomSQLDataSet; begin DataSet2 := SQLStoredProc1.NextRecordSet; ...
TCustomSQLDataSet *DataSet2 = SQLStoredProc1->NextRecordSet();
TSQLStoredProc で NextRecordSet を呼び出すと、新しく作成された TCustomSQLDataSet コンポーネントが返されますので、それを使用して次のレコード セットにアクセスすることができます。TADOStoredProc では、NextRecordset からインターフェイスが返され、それを既存の ADO データセットの RecordSet プロパティに割り当てることができます。どちらのクラスの場合でも、このメソッドは、返されたデータセットに含まれるレコードの数を出力パラメータとして返します。
初めて NextRecordSet を呼び出すと、2 番目のレコード セットが返されます。もう一度 NextRecordSet を呼び出すと 3 番目のレコード セットが返され、それをレコード セットがなくなるまで繰り返すことができます。それ以上のカーソルがなくなると、NextRecordSet は nil を返します。