Clears the current Recordset object and returns the next recordset by advancing through a series of commands.
Set recordset = recordset.NextRecordset(RecordsAffected)
The NextRecordset method syntax has these parts:
Part |
Description |
recordset |
An object variable representing a Recordset object based on a series of commands. |
RecordsAffected |
Optional. A Long variable to which the provider returns the number of records that the current operation affected. |
Use the NextRecordset method to return the results of the next command in a compound command statement or of a stored procedure that returns multiple results. If you open a Recordset object based on a compound command statement (for example, "SELECT * FROM table1;SELECT * FROM table2") using the Execute or Open method, ADO executes only the first command and returns the results to recordset. To access the results of subsequent commands in the statement, call the NextRecordset method.
As long as there are additional results, the NextRecordset method will continue to return Recordset objects. If a row-returning command returns no records, the returned Recordset object will be empty; test for this case by verifying that the BOF and EOF properties are both True. If a non-row-returning command executes successfully, the returned Recordset object will be closed; test for this case by verifying that recordset does not equal Nothing and that calling the EOF property generates an error. When there are no more results, recordset will be set to Nothing.
If an edit is in progress while in immediate update mode, calling the NextRecordset method generates an error; call the Update or CancelUpdate method first.
If you need to pass parameters for more than one command in the compound statement by filling the Parameters collection or by passing an array with the original Open or Execute call, the parameters must be in the same order in the collection or array as their respective commands in the command series. You must finish reading all the results before reading output parameter values.
When you call the NextRecordset method, ADO executes only the next command in the statement. If you explicitly close the Recordset object before stepping through the entire command statement, ADO never executes the remaining commands.