Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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
14-83746
dataMaster
2003-05-07 15:50
2003.05.26
Сказочка


6-83627
Arthur
2003-03-26 18:09
2003.05.26
WEB BROWSER ADDRESSES


1-83524
stkatch
2003-05-13 15:44
2003.05.26
Копирование open array массива в динамический массив


3-83322
Stas
2003-05-07 09:22
2003.05.26
SQL и IP


7-83769
_sMile
2003-03-24 11:31
2003.05.26
Как убить приложение?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский