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

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

Master-Details в TClientDataSet: касадное удаление [D6]


DreamDesire ©   (2003-06-03 10:32:00) 

Вобщем использую Midas. На AppServer"e TOracleDataSet связнные по принципу Master-Details. На клиенте, как вы уже догдались, TClientDataSet"ы. Вобщем все работало нормально, пока я не попытался реализовать каскадное удаление. Когда стояли обычные внешние ключи (Restrict) - все было тип-топ, потом же были введены ключи с опцией CASCADE и получается что при попытке удаления родителя говорит не могу, потому как есть дочерние записи. Попытался проделать то же только без 3-го звена, просто на TOracleDataSet - все прекрасно удаляется каскадом, тогда подумал - может глюки на клиенте, но переписав все еще несколько раз получал все тот же отрицательный результат. В принципе я уже реализовал альтернативный путь - метод на AppServer"e, который удаляет записи непосредственно из TOracleDataSet, но мне кажется это не совсем грамотно - получается вроде как неоднородное приложение, транзакции, как мне кажется, по-разному будут проходить, что может повлечь в дальнейшем какие-нибудь накладки, глюки и т.д.


Romkin   (2003-06-03 10:40:00) [1]

У провайдера есть опция cascadeDeletes & cascadeUpdates - должно помочь


Наверх

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