Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Yahoo Гость
|
Добавлено: Ср Авг 11 2004 16:40 Заголовок сообщения: Как быстро получать данные? |
|
|
У меня в таблице ну очень много данных и чтобы переместиться в конец приходится в начале программы перекатывать в память все данные(TIBQUERY.Last). А можно ли без этого?
Кто знает помогите пожалуйста, очень надо...
gromozeka1983@mail.ru |
|
Вернуться к началу |
|
|
wildwind
Зарегистрирован: 03.02.2004 Сообщения: 268 Откуда: Москва
|
Добавлено: Чт Авг 12 2004 10:42 Заголовок сообщения: |
|
|
Можно. Надо составить запрос так, чтобы вернулись только те данные, которые нужны табе сейчас. И они будут в самом начале |
|
Вернуться к началу |
|
|
Yahoo Гость
|
Добавлено: Чт Авг 12 2004 16:04 Заголовок сообщения: Как быстро получать данные? II |
|
|
wildwind писал(а): | Можно. Надо составить запрос так, чтобы вернулись только те данные, которые нужны табе сейчас. И они будут в самом начале |
Если составлять запрос на выборку, то IB Будет перерывать все данные из таблицы занова, а мне треба брать только определенную часть из возвращаемых данных, которую хочет просмотреть Пользователь, вертя линию скроллинга. |
|
Вернуться к началу |
|
|
_ShAmAn_
Зарегистрирован: 03.01.2004 Сообщения: 94
|
Добавлено: Чт Авг 12 2004 17:25 Заголовок сообщения: |
|
|
У компонента или ДатаСет или ИБДатаБэйс, точно не помню, есть свойство в котором ты определяшь где происходит кеширование, на клиенте или на сервере, а также свойство где определяется какое количество строк загоняется в кеш.
Сорри за расплывчатый ответ, но могет быть натолкнет на мысль |
|
Вернуться к началу |
|
|
wildwind
Зарегистрирован: 03.02.2004 Сообщения: 268 Откуда: Москва
|
Добавлено: Чт Авг 12 2004 19:17 Заголовок сообщения: Re: Как быстро получать данные? II |
|
|
Yahoo писал(а): | Если составлять запрос на выборку, то IB Будет перерывать все данные из таблицы занова, а мне треба брать только определенную часть из возвращаемых данных, которую хочет просмотреть Пользователь, вертя линию скроллинга. |
Все равно непонятно, что же тебе требуется. Запросов, возвращающих тысячи записей, в которых пользователь потом выискивает то, что ему нужно, в программе не должно быть в принципе. Это говорит о плохом дизайне.
Или ты про постраничный вывод? |
|
Вернуться к началу |
|
|
Yahoo Гость
|
Добавлено: Пт Авг 13 2004 21:22 Заголовок сообщения: Re: Как быстро получать данные? II |
|
|
Или ты про постраничный вывод?[/quote]
В яблочко, но можно ли подробнее про выдирание страниц с сервера БД??? Плиз... |
|
Вернуться к началу |
|
|
wildwind_ Гость
|
Добавлено: Ср Авг 18 2004 10:45 Заголовок сообщения: |
|
|
Погугли по этим словам, в Сети очень много на эту тему... |
|
Вернуться к началу |
|
|
Andy-C
Зарегистрирован: 09.12.2003 Сообщения: 73 Откуда: Нальчик
|
Добавлено: Чт Авг 19 2004 10:38 Заголовок сообщения: fetchAll() допустим в отдельном потоке. |
|
|
Вываливание >>1 000 (цифирь-то в принципе от потолка, но общее ощущение даёт) записей на клиента (ОБЫЧНО) - весьма не кашерно.
Человечек столько не почитает.
Если всётаки тащить, то быстро не получиться - ну наде же их по сетке передать хотя бы раз.
А сваливать во что-то похожее на ClientDataSet и обрабатывать на клиенте.
Это тоже весьма не кашерно - зачем на клиенте далать работу сервера...
Если не секрет, что за задача такая что прям ужас сколько записей надо клиенту показывать?
ну может gb_DataSets поможет. см (кажется) ibase.ru _________________ До onlina Andrew C. |
|
Вернуться к началу |
|
|
Yahoo Гость
|
Добавлено: Сб Авг 21 2004 09:41 Заголовок сообщения: Re: fetchAll() допустим в отдельном потоке. |
|
|
Если не секрет, что за задача такая что прям ужас сколько записей надо клиенту показывать?
Проезд машин на заводском КПП!!! |
|
Вернуться к началу |
|
|
|