Jest to powszechny problem spowodowany interpretacją liczby wierszy jako danych wyjściowych procedury przechowywanej podczas korzystania z ADODB
z serwerem SQL.
Aby tego uniknąć pamiętaj o ustawieniu
SET NOCOUNT ON;
w procedurze składowanej spowoduje to zatrzymanie przez ADODB zwracania zamkniętego zestawu rekordów lub jeśli z jakiegoś powodu nie chcesz tego robić (nie wiesz, dlaczego, ponieważ zawsze możesz użyć @@ROWCOUNT
aby cofnąć licznik rzędów), możesz użyć
'Return the next recordset, which will be the result of the Stored Procedure, not
'the row count generated when SET NOCOUNT OFF (default).
Set rs = rs.NextRecordset()
który zwraca następny ADODB.Recordset
jeśli ADODB wykrył, że jest on zwracany przez procedurę składowaną (najlepiej jest sprawdzić rs.State <> adStateClosed
gdy mamy do czynienia z wieloma obiektami ADODB.Recordset).