Типът код, който пишете, е силно податлив на SQL инжектиране. Вместо да обработвате четеца като вас, можете просто да използвате свойството RecordsAffected, за да намерите броя на редовете в четеца.
РЕДАКТИРАНЕ:
След като направихте известно проучване, разликата, която виждате, е разлика по дизайн между контекстната връзка и обикновената връзка. Питър Дебета публикува блог за това и пише:
„Контекстната връзка е написана така, че извлича само ред в даден момент, така че за всеки от 20-те милиона някои странни реда, кодът искаше всеки ред поотделно. Използвайки неконтекстна връзка обаче, той изисква 8K на стойност от редове наведнъж."
http://sqlblog.com /blogs/peter_debetta/archive/2006/07/21/context-connection-is-slow.aspx