Форум: "Базы";
Текущий архив: 2003.05.26;
Скачать: [xml.tar.bz2];
ВнизТормоза при работе с DBF Найти похожие ветки
← →
Ruff (2003-05-05 16:30) [0]Ребят, у меня таблица на 20000 записей сделана одним ДБФ-ом. Во время перемещения по DBGrid-у прога ужасно тормозит. Нельзя ли от этого как-то избавиться?
База подключается из локального каталога и работает через SQLQuery.
← →
Johnmen (2003-05-05 17:00) [1]Что имеется в виду под SQLQuery ?
При обратном листании тоже тормозит ?
← →
Ruff (2003-05-05 17:12) [2]При обратном - тоже.
Я имел ввиду TQuery, просто у него на значке SQL нацарапано ;)
← →
Соловьев (2003-05-05 17:17) [3]запрос вида
select *
from table
наверное?
← →
Johnmen (2003-05-05 17:19) [4]Может плюнуть на разбор "почему" ?
И перестать получать невнятно большие количества ?
:)
← →
Ruff (2003-05-05 17:29) [5]Кстати, запрос еще сложнее, чем *. Там еще куча условий...
А сократить объем БД никак нельзя. Более того он будет только расти
← →
yurikon (2003-05-05 17:36) [6]Нет обработчика события OnCalcFields?
Оно может вызываться при перемещении по Grid`у...
← →
Dred2k (2003-05-05 17:37) [7]А может он у тебя еще и "живой"?
(RequestLive := True)?
← →
Johnmen (2003-05-05 17:38) [8]>А сократить объем БД никак нельзя
Я не призываю сокращать объем таблицы (а не БД) !
Я призываю сократить объем получаемых запросом данных.
← →
sniknik (2003-05-05 17:40) [9]а если через таблицу (TTable)? не тормозит?
в смысле проверить запрос виноват или как. вообщето 20тыс плевое количество для dbf таблицы (вот 100 это уже существенно, и даже иногда смертельно).
может у тебя там куча удаленных записей? если их много может и притормозить работу.
← →
Dred2k (2003-05-05 17:46) [10]
> Johnmen © (05.05.03 17:38)
> Я призываю сократить объем получаемых запросом данных.
Разумеется, это имеет значение. Но только на этапе выполнения. Товарищ через БДЕ работает, а там localsql результат во временную таблицу пихает, ничего далее не выполняя (к живым запросам не относится, по ходу). Так вот на практике навигация очень быстрая. Тут другой случай, мне думается...
← →
Johnmen (2003-05-05 17:51) [11]>Dred2k © (05.05.03 17:46)
Вот и мне странно это. В смысле сильного торможения торможения.
Поэтому и уточнял про обратное листание...
Насколько помнится ~ 20000-30000 записей без особых проблем...
← →
Dred2k (2003-05-05 17:57) [12]> Johnmen © (05.05.03 17:51)
> Насколько помнится ~ 20000-30000 записей без особых проблем...
В принципе и больше. Ограничения - только винт и терпение юзера. Ну и блобы не дергать впрямую... Это личные наблюдения про БДЕ и localsql. Причем, localsql так пашет даже для IB, к примеру, если запрос гетерогенный (создает файл со всеми данными и по нему бегает). Тормоза у товарища либо от "навесок" на датасет, либо от "живости" запроса, либо.... (сейчас придумаем) ;)
← →
sniknik (2003-05-05 18:08) [13]а еще вопрос DBGrid это именно DBGrid? не Ehxxxx, Xxxxx либо подобное? В какойто версии сталкивался там вся таблица(или часть от запроса) в память вкачивалась, как будто в StringGrid, за счет этого дополнительные возможности, но если памяти мало то и дополнительные тормоза.
← →
MsGuns (2003-05-05 18:23) [14]Эхгрид тормозит однозначно.
← →
Zacho (2003-05-05 18:32) [15]
> MsGuns © (05.05.03 18:23)
Хм.. Не замечал. Может он тормозит, если включены футеры или еще какая-нибудь дребедень ?
← →
MsGuns (2003-05-05 18:49) [16]>Zacho © (05.05.03 18:32)
Opps... Похоже, я спутал с RxLib - вот там навалено столько на бедный грид (в частности на события связанного источника данных), что уши морским узлом завязываются ;))
← →
Dred2k (2003-05-05 19:18) [17]
> MsGuns © (05.05.03 18:49)
Работаю именно с ним. Никаких тормозов нет. Если самому, конечно, на всякие хорошие события всякого разного не написать. Народ, порой, в него по 40-50 тыщ. выбирает с сортировкой, а потом по истории всяких там прикладных вещиц последовательно по Locate лазит (так им удобнее). Правда, при Locate всякие Before...AfterScroll и все такое я на время отрубаю. Так что...
← →
Ruff (2003-05-06 10:43) [18]
> Нет обработчика события OnCalcFields?
Нет, но был OnAfterScroll, хотя я пробовал его убрать - не помогло
> А может он у тебя еще и "живой"?
Да, это действительно сильно влияет?
> Я призываю сократить объем получаемых запросом данных.
Нужно, чтобы юзерь мог перемещаться по всей таблице. Или это реализуется иначе?
> может у тебя там куча удаленных записей?
Нет, табличка нулёвая, только что сконверченная
> а еще вопрос DBGrid это именно DBGrid?
Да, все только стандартное.
← →
Dred2k (2003-05-06 10:50) [19]
> Ruff (06.05.03 10:43)
> > А может он у тебя еще и "живой"?
> Да, это действительно сильно влияет?
Очень сильно. Вообще, живость ущербна. Используй неживой запрос, CachedUpdates и UpdateSQL. Будет нормально...
← →
Ruff (2003-05-06 10:57) [20]
> Dred2k ©
С тобой по аське можно связаться?
Моя - 311805858
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.05.26;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.007 c