Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Удаление записей из подчиненной таблицы [D6, Access]


diabolik_krsk ©   (2004-11-09 09:42:00) 

Помогите решить проблему.

На форме существует два компонента ADOQuery (ADOQ) и ADOTable (ADOT), связывание с DBGrid идет через DataSourse.
ADOT является подчиненой таблицей по отношению к ADOQ.
Пытаюсь удалиить запись в ADOQ и ADOT таким образом


ADOT.First;
with adot do while not Eof do
begin
 if ADOT.FieldByName('tip').AsString = ADOQ.FieldByName('tip').AsString
 then
   begin
     ADOT.Delete;
     ADOT.next
   end
 else ADOT.Next;
ADOQ.Delete;
end;


Естественно в подчиненной таблице несколько записей относящихся к одной записи в ADOQ. Однако в ADOT программа удаляет только одну запись, а остальные оставляет.
В таблице привязанной через ADOQ все удаляется нормально.

В результате в подчиненной таблице остаются записи никуда не относящиеся (мусор).

Подскажите как сделать чтобы в подчиненной таблице все записи удалялись, а не одна???


Mike Kouzmine   (2004-11-09 11:55:00) [1]

Тот что после делете


diabolik_krsk   (2004-11-09 11:07:00) [2]


> Mike Kouzmine ©   (09.11.04 09:46) [1]

Где его убрать??? Да и если его убрать, не зависнет ли цикл удаления??


> Manfred8   (09.11.04 10:49) [2]
> вообще-то есть такие штуки как связи и каскадное удаление


А что это такое и где можно почитать??


Manfred8   (2004-11-09 10:49:00) [3]

вообще-то есть такие штуки как связи и каскадное удаление


Mike Kouzmine   (2004-11-09 09:46:00) [4]

А ты некст убери то.


Наверх

Титульная страница Поиск, карта сайта Написать письмо