Chris,
You won't be able to do it via the SQLDataReader without reading through the
records first (in which case you can simply increment a counter, or use the
solution I briefly outline in #2)
1 - Consider using a datatable. You'll easily be able to access the number
of rows via datatable.Rows.Count. Additionally, if your SQL Server is
struggling, you'll be able to cache the datatable and reduce the load (I
realize that you are probably doing a search in which case the results
aren't very cache friendly, but hey , I thought I'd throw it out there
anyways).
2 - You can access an output parameter after doing a dr.close, which could
be the @@RowCount SQL server automatically generates. I'd go into more
details, but since you need to have the datareader closed, I'll assume that
you'll have already read through it and could simply have used a
counter...so this probably is a no go.
Karl
--
MY ASP.Net tutorials
http://www.openmymind.net/
"Chris Tremblay" <Cu*************@mtgfanatic.com> wrote in message
news:OR*************@TK2MSFTNGP11.phx.gbl...
I am trying to figure out how to go about retrieving the number of results
returned from my queries in SQL server from VB.NET without using a the
Select Count(*) query. The method that I was using was the following:
Take the query that I am executing, copy the query and turn it into a
count query, run the count query, then execute the original query.
The reason for this is so that I can implememt public paging on my
website. The problem with this method is that it is putting to much stress on my
SQL Server. Is there a way that I can find the number of rows returned. The
way I figure, if you use an SQLdatareader, it knows when it has reached the
end of the result list, therefore, you should be able to have some access to
the number of results without reading through each record.
--
Thanks,
Chris Tremblay
www.mtgfanatic.com, Inc.