Форум: "Базы";
Текущий архив: 2002.11.04;
Скачать: [xml.tar.bz2];
ВнизВозврат курсора TQuery в прежнюю позицию после обновления Найти похожие ветки
← →
Duce (2002-10-14 14:28) [0]Привет, уважаемые! Мастерства никогда не бывает слишком много...
Сразу замечу - пользую БДЕ.
Вот встал вопрос: юзер выбрал сущность из списка(DBGrid),изменил
сущность через форму, ОК, возвращаем его назад в список, на ту запись, которую он менял. Т.е. передернули Query и для возврата я ранее пользовал Locate для возврата к прежней записи. Т.е. запоминал прайм-кей(ID) записи, и затем по этому значению делал Locate. Нынче записей много, такая метода тормозит, и весьма...
Как лучше решать эту задачу?
← →
Johnmen (2002-10-14 14:34) [1]Так и решать...
Чем меньше будет возвращаться записей, тем меньше будет тормозить.
← →
passm (2002-10-14 14:38) [2]Duce © (14.10.02 14:28)> Ограничивай возвращаемый набор данных установкой фильтров - большой набор данных пользователю, как правило, не нужен. А ускорить позиционирование не получится - индексов нет.
← →
Dr. Well (2002-10-14 14:43) [3]Я не знаю, что быстрее, но я всегда использовал:
Number:=Table1.RecNo;
Table1.ReFresh;
Table1.MoveBy(Number-1);
В скорости не уверен...
← →
Duce (2002-10-14 14:46) [4]к Johnmen © (14.10.02 14:34)
Спасибо, укрепил веру! :)
А в кладовках БДЕ АПИ чего-нить полезного нету?
Кстати, кол-во кешируемых записей никак заметно не повлияло на
скорость...
Хоть бы что-нить отжать на скорость. Я например прописал тупой забег по набору со сравнением поля и остановом. Работает шустрее.
Вот думаю, интерпретация типа поля из варианта в что-либо иное(AsInteger) тяжкая вещь? Может, что-то на бинарных сравнениях можно сэкономить...
← →
Anatoly Podgoretsky (2002-10-14 14:51) [5]Если хочешь быстрее бежать по полую, то сделай постоянные поля и сравнивай с Value
← →
Duce (2002-10-14 14:54) [6]к Anatoly Podgoretsky © (14.10.02 14:51)
ОК, но что значит "сделай постоянные поля "?
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.11.04;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c