Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Почему в MSSM запрос выполняется быстрее, чем через ADO?  [new]
viktor zelenin
Member

Откуда:
Сообщений: 185
Я не понимаю в чём причина,
в общем суть такая,
делаю из Query Editor запрос к удалённому серваку, отбирается примерно около 1000 записей, при 11 полях.
Все записи не сложные в пределах varchar(150). На всё про всё примерно уходит 20 секунд.

Делаю тот же запрос через ADO,
и при переборе просто
i = rs.fields.count
while rs.eof=false
for i =0 to rs.fields.count
debug.print rs.fields(i)
next
rs.movenext
wend
эта вся процедура отнимает больше минуты,
уже пробовал и GetRows, тоже много времени отнимает.

но каким то образом MSSM же наполняет таблицу данными за 20 секунд?
как ещё можно получить к себе рекордсет? потому что я заметил, что цикл после каждого rs.movenext тянет из сети данные.
есть ли способ получить и отвязать рекордсет?

рекордсет открываю так:
rs.open sSQL, CN, adOpenStatic, adLockReadOnly
28 сен 09, 00:24    [7713452]     Ответить | Цитировать Сообщить модератору
 Re: Почему в MSSM запрос выполняется быстрее, чем через ADO?  [new]
viktor zelenin
Member

Откуда:
Сообщений: 185
похоже что проблема крылась в adOpenStatic
поменял на adOpenForwardOnly вроде забыстрилось всё
28 сен 09, 00:42    [7713477]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить