Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > ADODataSet обновить после удаления другим ADODataS


Автор: Rodeon 4.12.2011, 01:39
2 ADODataSet-а (один как бы основной, второй вспомогательный временный).
к первому прикручен DBGrideh, и собирает данные из таблицы.
второй ADODataSet производит манипуляции с таблицей.

Небольшая проблемма, после того как ADODataSet2 удалит записи в таблице, приходиться заново переподлючать ADODataSet1.active:=true -> false -> true
иначе данные в DBGrideh не обновятся (что в принципе логично).

Вопрос, может есть проще способ обновлять выборку данных ADODataSet-а после удаления другим ADODataSet-ом?
или лучше через один все проводить, т.е. для удаления задать новый sql запрос и после всех манипуляций снова подклюбчиться со старым запросом?

Спасибо заранее за совет!

Автор: Данкинг 4.12.2011, 01:46
Вообще для запросов логичней AdoQuery использовать, а не ADODataSet. 

Автор: Rodeon 4.12.2011, 01:50
С Adoquery не помню уже что, но был какой-то изьян, в то время как dataset все сделал на ура! И с тех пор как-то пошло само по накатанной.
Но даже если счас переделаю на 2 Adoquery вопрос остаеться открытым как лучше? Использовать все таки два или в один все запросы выдавать?

Автор: Rodeon 4.12.2011, 02:08
Да, переделал с Adoquery,
все работает через 4 строки
    ADOQuery1.Close;
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('DELETE FROM [Ñïèñîê ïàðòèé] WHERE [Íîìåð ïàðòèè]='+inttostr(tempo));
    ADOQuery1.ExecSQL;
    
потом подружаю прежний запрос!

Рано тему создал - надо было поэксперементировать маленько еще!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)