Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как правильно сделать "скользящий курсор" по выборке


Layner ©   (2006-04-06 16:17:00) 

Здравствуйте! Есть проблемка, не могу сделать скачку выборки с сервера "порциями", т.е. не все сразу данные закачивать, а только по нескольку сот строк например. Сейчас у меня происходит что, есть таблица на 70тыс строк, пока все данные видимо с сервера не скачаются, программа "висит". А еще если сервер грузится другими пользователями ждать приходится не мало. Я использую MSSQL2000+ADOQuery(D7).
Перебирал все возможные варианты с
CursorLocation
-clUseClient
-clUseServer

CursorType
-ctUnspecified
-ctOpenForwardOnly
-ctKeyset
-ctDynamic
-ctStatic

Все равно запрос длится ровно 10 сек (по таймеру замечал), или чуть больше, но никак не сразу выдает результат... Подскажите, может что ещё надо на ADOQuery предустанавливать? Или Type & Location достаточно правильно установить? Я вроде все перепробовал, никак не получается :( Заранее благодарю.


Sergey13   (2006-04-07 08:58:00) [1]

2[7] Layner ©   (06.04.06 16:58)
Не надо всегда слепо идти на поводу у юзеров. Это как раз тот случай. Скажи им, что такой метод работы не выдержит ни один сервер и ни одна сеть. Это кстати недалеко от истины.


Layner   (2006-04-06 16:58:00) [2]

ну данные.. типа хронологии... юзера не хотят перепрыгивать по датам, их устраивает PageDown передвигаться, записей в хронологии много, раньше работало, тут хотелось бы усовершенствовать, да за одним самому научится так делать :)

Выборку сделать ЛЕГКО, но им надо все казать, я бы сделал..


Sergey13   (2006-04-06 16:51:00) [3]

2 [3] Layner ©   (06.04.06 16:46)
> то не приходит в голову, как мне обрабатывать дозапросы, если пользователь бежит по гриду вниз
Может все таки съузить ему поиск начальными условиями? 70000 пробежать палец устанет. 8-)
Например, что бы найти Ходорковского в списке олигархов, вовсе не обязательно начинать этот список с Абрамовича.


Desdechado   (2006-04-06 16:50:00) [4]

> если пользователь бежит по гриду вниз
а как в яндексе - 10 строк, потом жмешь кнопку "2" - еще 10 строк и так далее


Курдль   (2006-04-06 16:50:00) [5]


> не приходит в голову, как мне обрабатывать дозапросы, если
> пользователь бежит по гриду вниз, отлавливать RecNo?

Пользователь настучать по рукам и выдать сообщение "По Вашему запросу получено более 1000 записей. Пожалуйста, уточните условия выборки!"


Layner   (2006-04-06 16:46:00) [6]

Я думал можно одним ADOQuery сказать, как мне данные брать, все целиком или порционно.. Почитал фак, что то не приходит в голову, как мне обрабатывать дозапросы, если пользователь бежит по гриду вниз, отлавливать RecNo? А дальше... бр.. ничего не понятно :(


Nikolay M.   (2006-04-06 16:29:00) [7]

В ФАК, все в ФАК...

http://www.sql.ru/faq/faq_topic.aspx?fid=105


Sergey13   (2006-04-06 16:21:00) [8]

2Layner ©   (06.04.06 16:17)
>есть таблица на 70тыс строк,
А прикинь, если будет 70 миллионов!
В названии сервера MSSQL2000 буквы SQLозначают, что сервер поддерживает этот одноименный язык. А язык достаточно богатый, что бы выкачивать не все что есть, а только то что надо. Он для этого и придуман был.


Наверх

Титульная страница Поиск, карта сайта Написать письмо