Гость
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Очень большой результирующий набор на выходе запроса / 6 сообщений из 6, страница 1 из 1
27.08.2001, 06:19
    #32012874
Slava
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень большой результирующий набор на выходе запроса
Резуьтатом работы запроса TQuery к MS SQL Server 7.0 является очень большой результирующий набор строк открывается 27с. Подскажите как можно открывать не весь, а часть или может есть другие варианты ускорения открытия запроса.
...
Рейтинг: 0 / 0
27.08.2001, 07:23
    #32012883
tygra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень большой результирующий набор на выходе запроса
1. А нужен ли такой результат запроса вообще? Скорее всего нет, поэтому нужно сам запрос подшаманить.
2. Вообще можно ограничить результат: select TOP 100(или 111, или сколько надо) * from ...

Кажется мне, что не нужен такой гигантский результат вообще...
Чего вообще то выбирается
...
Рейтинг: 0 / 0
27.08.2001, 09:13
    #32012895
Slava
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень большой результирующий набор на выходе запроса
Производиться просмотр таблицы которая содержит очень много записей, и нужны всегда свежие данные, я на событие формы OnShow посадил обновление которое как выше было сказано идёт 27с.
...
Рейтинг: 0 / 0
03.09.2001, 02:42
    #32013335
petr13
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень большой результирующий набор на выходе запроса
А кому нужно то ?
Предположим, что результирующий набор записей 10000. Ну не может человек, в силу
своих физиологических особенностей обозреть такой набор. Все равно, происходит
его сужение по каким либо критериям.

Если критерии статические, то имеет смысл
организовать это все в виде дерева, так, чтобы на нижнем уровне было не более
100 записей, что будет обновляться в лет. А дерево формировать динамически, и сбалансировать его так, что бы на каждое его открытие извлекалось не более 10-20
записей. Т.е. схема такая, человек решает, в какой области набора данных он будет
работать, приходит в эту область и работает.

Если критерии динамические, тогда надо строить, систему настраиваемых фильтров,
опять таки, ограничивая результирующий набор в 100 записей.

Вероятно возможен и комбинированный подход. В любом случае нужно исходить из
прикладной логики задачи
...
Рейтинг: 0 / 0
06.09.2001, 10:03
    #32013605
Begemoth
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень большой результирующий набор на выходе запроса
Попробуй использовать курсор, это такая фишка в СКЛ есть, она делает выборку хоть мильён строк, а показывает одну, и еще его можно сделать прокручивающимся.
...
Рейтинг: 0 / 0
26.10.2001, 07:05
    #32016064
Barbar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Очень большой результирующий набор на выходе запроса
Вообще, если сам по себе запрос отрабатывает быстро, то вся задержка связана с дочиткой записей на клиента. Необходимо подавить данную дочитку. Для этого данный запрос должен быть открыт в другом соединении с БД (свой TSession), т.к. буквально следующий запрос в том же соединении вызывает дочитку предыдущего запроса. Использование методов recordcount и Last тоже приводят к дочитке. Если recordcount используется для определения наличия записей (recordcount > 0) то правильнее будут использовать метод IsEmpty) Все вышесказанное верно для TQuery.

Успехов.
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Очень большой результирующий набор на выходе запроса / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]