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

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

Каскадное удаление вручную [D7, FlashFiler]


MORA ©   (2004-07-26 14:02:00) 

Нужно удалить запись и заодно все подчинённые записи во всех подчин. таблицах.
Правильно ли я делаю:
обработчик DataSet.BeforeDelete:


if ConfirmDelete then // если дано добро на удаление
 begin
   ffdb.StartTransaction;
   try
     //удаляю все подчинённые записи
     ffdb.Commit;
   except
     ffdb.Rollback;
   end;
 end
 else
   raise EAbort.Create('');


а в обработчике btnDeleteClick:

     try
       DataSet.Delete;
     except
       on E: EDatabaseError do
         Application.MessageBox(PChar(E.Message), 'error', MB_ICONERROR);
     end;


в принципе EDatabaseError использую для других целей (здесь это ни при чём)


MORA   (2004-07-26 16:05:00) [1]


> А что за объект ffdb?

см. [3]


Вовчик   (2004-07-26 15:41:00) [2]

А что за объект ffdb?


MORA   (2004-07-26 14:52:00) [3]


> Всё удаление, и в основной и в дочерней, д.б. в рамках одной
> транзакции


а в моём коде что-то недопустимое?


MORA   (2004-07-26 14:25:00) [4]


> я бы спросил что такое FlashFiler? что это еще за новая
> СУБД?

да есть такая.
мне не нравится, но начальство заставиЛО разобраться.
есть контора такая американская TurboPower. Вот она и сделала такую БД типи клиент-серверную.
Но если честно, г... полное


Соловьев   (2004-07-26 14:13:00) [5]


> а что такое ffdb?

я бы спросил что такое FlashFiler? что это еще за новая СУБД?


Вовчик   (2004-07-26 14:10:00) [6]

а что такое ffdb?


Johnmen   (2004-07-26 14:09:00) [7]

Не очень...
Всё удаление, и в основной и в дочерней, д.б. в рамках одной транзакции.


Наверх

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