Ранее я задавал вопрос о хранимой процедуре, которая также выполнялась медленно на сервере sql, однако, если я запустил sproc в Query Analyzer, он вернется менее чем за одну секунду. Клиент представляет собой приложение winforms .NET 1.1.
Я смог подключиться через VNC к ящику пользователя, и, конечно же, у них не было установленных инструментов SQL, поэтому я запустил Excel, зашел в VBA и написал быструю функцию для вызова sproc с точно такими же параметрами.
Оказывается, sproc возвращает долю секунды, и я могу перебрать все строки в кратчайшие сроки. Однако закрытие соединения занимает очень много времени, от 5 до 30 секунд.
Почему закрытие соединения занимает так много времени?