Purtroppo le selezioni provenienti dalle stored procedure non popolano la proprietà recordcount del recordset, tuttavia possiamo usare una stored procedure e avere ugualmente questo dato. Ci sono un paio di possibilità che possono essere realizzate ossia attraverso una tabella temporanea che dovrà essere caricata con il risultato della selezione e successivamente interrogata per recuperare il numero di record da mettere in un parametro di ritorno, oppure un'altra possibilità più veloce è attraverso una common table expression come riportato nell'esempio qui sotto.
Il risultato conterrà nell'ultima colonna del recordset il numero totale dei record.
with new_table(campo1, campo2, campo3, ecc., row_count) as
(
SELECT campo1, campo2, campo3, ecc., '' row_count
FROM tabella
WHERE campo1 = 'valore'
)
select campo1, campo2, campo3, ecc., (select count(*) from new_table) row_count
from new_table






