![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
access медленно работает? [D5, access]
Донской © (2006-01-23 15:44:00)День добрый! Ух, давно я здесь не появлялся....
Вот код
k:=0;
w:=gettickcount;
first;
while not eof do
begin
k:=k+1;
edit;
SetCurrImpulsesRNumTotalImp.asinteger:=k;
post;
next;
end;
showmessage(floattostr((gettickcount-w)/1000));
Обращение идет к TADODataSet. Количество записей - 107.
Почему сообщение показывает, что цикл выполнялся больше 30 секунд?
Провел наблюдение.
В таблице есть поля blob. Особенные тормоза наблюдаются с теми записями, где эти поля заполнены.
Anatoly Podgoretsky (2006-01-23 17:01:00) [21]Где текст запроса?
Донской (2006-01-23 17:00:00) [22]> Johnmen ©
SetCurrImpulsesRNumTotalImp из tadodataset
> atruhin ©
> Не используй ADOTable, см. ADODataset
я его и использую
> sniknik ©
disablecontrols и enablecontrols я использую, просто не написал в примере.
Вот полный код
var SetCurrImpulses : tadodataset;
with SetCurrImpulses do
begin
DisableControls;
if isempty then
exit;
k:=0;
w:=gettickcount;
first;
while not eof do
begin
k:=k+1;
edit;
findfield('RNumTotalImp').asinteger:=k;
post;
next;
end;
showmessage(floattostr((gettickcount-w)/1000));
enablecontrols;
end;
sniknik (2006-01-23 16:45:00) [23]DisableControls в конце, после цикла EnableControls.
> нумерация записей (нужна для кое-чего)
у датасета с клиентским курсором адекватный RecNo... даже при фильтрах и сортировках (вроде было так, давно не проверял)
atruhin (2006-01-23 16:17:00) [24]Не используй ADOTable, см. ADODataset
Johnmen (2006-01-23 16:10:00) [25]>Запроса как такового нет!
Как это нет????? Откуда же поле SetCurrImpulsesRNumTotalImp?
Донской (2006-01-23 15:57:00) [26]Запроса как такового нет!
я просто в цикле обновляю поля - нумерация записей (нужна для кое-чего)
while not eof do
begin
edit
SetCurrImpulsesRNumTotalImp.asinteger:=k;
post
next
end
и все!
Плохиш (2006-01-23 15:48:00) [27]Не включай blob-поля в запрос.