Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: Долго загружает рекордсет Добавлено: 21.07.11 11:31  

Автор вопроса:  fifa36
Есть таблица в базе Access. В ней 62 тыс. записей. Три из 4 полей индексированы, индексирована также как уникальная комбинация этих полей.

Запрос выбирает около 400 записей из этой таблицы.
Операция

rstQuotes.MoveLast()

занимает 25 минут. Потом цикл быстро обрабатывает мгновенно.
Если не двигаться к последней записи, то цикл будет отрабатываться примерно те же 25 минут.

Вообщем если какой- то другой способ, более быстрый? а то это очень долго


rstQuotes.Open(sql, connObject, ADODB.CursorTypeEnum.adOpenDynamic) '= connRISKAPP.Execute(sql)
rstQuotes.MoveLast()
rstQuotes.MoveFirst()

Do Until rstQuotes.EOF
Console.WriteLine(rstQuotes.Fields("PROD").Value)
rstQuotes.MoveNext
Loop

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 fifa36



Вопросов: 33
Ответов: 116
 Профиль | | #1 Добавлено: 21.07.11 11:34
Дело еще в том что запрос написан не оптимально, но это предмет отдельной дискуссии, интересно можно ли кроме правки запроса что- то сделать!

Ответить

Номер ответа: 2
Автор ответа:
 Ким Чен Ир



Вопросов: 0
Ответов: 140
 Профиль | | #2 Добавлено: 22.07.11 02:13
Самый шустрый рекордсет ForwardOnly, но в твоем случае что-то все-таки с самим запросом. Выкладывай.

Ответить

Номер ответа: 3
Автор ответа:
 fifa36



Вопросов: 33
Ответов: 116
 Профиль | | #3 Добавлено: 22.07.11 09:26
Запрос уже поправил!) Увеличился в 4 раза по объему но зато стал отрабатывать за секунды. На счет ForwardOnly понял спасибо!

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам