Форум: "Базы";
Текущий архив: 2009.11.08;
Скачать: [xml.tar.bz2];
ВнизНепонятная работа БД Найти похожие ветки
← →
kyn66 © (2008-12-15 15:34) [0]Уважаемые, подскажите , почему возникают проблемы при работе с базами ADS(Local server)? В таблице 3500000 записей. Открывается быстро, однако, когда даю команду Close - висит секунд 10-12. В чем дело? Есть такие-же проблемы и когда делаю SQL-запрос на удаление из базы некоторого кол-ва записей. Тоже выполняется запрос очень долго. Что я не так делаю?
← →
ANB (2008-12-15 15:38) [1]
> Есть такие-же проблемы и когда делаю SQL-запрос на удаление
> из базы некоторого кол-ва записей. Тоже выполняется запрос
> очень долго
Нету индекса.
> Открывается быстро, однако, когда даю команду Close - висит
> секунд 10-12.
Про ADS - не знаю, что это такое, но скорее всего потому как СУБД - версионник.
← →
kyn66 © (2008-12-15 15:44) [2]
> Нету индекса.
Индекс есть. Я не про поиск говорю, а про удаление
with TAdsQuery.Create(nil) do
try
AdsConnection := DM1.AdsConnection1;
ParamCheck := True;
SQL.Clear;
SQL.Add("DELETE FROM TirSL WHERE Tir = :p1");
Params[0].Value := tir;
ExecSQL;
SQL.Clear;
CLose;
finally
Free;
end;
> но скорее всего потому как СУБД - версионник.
Не понял, что это такое...
← →
Sergey13 © (2008-12-15 15:47) [3]> [2] kyn66 © (15.12.08 15:44)
> SQL.Clear;
> CLose;
А зачем эти строчки? Что ты пытаешься закрыть?
← →
ANB (2008-12-15 15:51) [4]
> Индекс есть. Я не про поиск говорю, а про удаление
Прежде чем удалять, СУБД должна записи найти.
Индекс на таблице TirSL по полю Tir есть ?
Если сделать селект с таким условием - много записей вернет ?
SQL.Clear;
CLose;
Эти строчки, действительно, бессмыслены.
← →
kyn66 © (2008-12-15 15:57) [5]Select все работает. Про удаление - это второй вопрос. Меня больше сейчас интересует почему виснет прога, точнее не виснет а работает так долго при закрытии таблицы?
procedure TTiragSLFrm.FormDestroy(Sender: TObject);
begin
Screen.Cursor := crHourGlass;
DM1.SvodTSLTbl.Close;
DM1.TirSLTbl.Close;
DM1.TrkTbl.Close;
Screen.Cursor := crDefault;
end;
Даже прищлось часики поставить.
← →
Desdechado © (2008-12-15 16:06) [6]
> почему виснет прога, точнее не виснет а работает так долго
> при закрытии таблицы?
Эти таблицы были открыты только на чтение? Или к ним еще применялись операции изменения? Может, просто изменения записываются на диск перед закрытием.
← →
kyn66 © (2008-12-15 16:32) [7]Изменения были. Однако я просто их открываю(открытие формы) и сразу форму закрываю, см.[5]/ Зависон сикунд 10-15. Могет на компоненте TAdsTable какие параметры убрать/поставить нужно. Ну чудо какое-то. Ладно бы при открытии(пока индексы настроятся, пока все занрузится...) А тут просто Close - и на те тормоза. Я отказываюсь понимать здравый смысл. Вразумите, плис.
← →
kyn66 © (2008-12-15 16:36) [8]Пробывал перед закрытием убирать привязку к индексам - все едино, тормоза.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2009.11.08;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.012 c