Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.24;
Скачать: CL | DM;

Вниз

Ссылочная целостность   Найти похожие ветки 

 
Pat ©   (2003-03-05 21:38) [0]

Работаю с Paradox через BDE. Есть две таблицы Master-Detail. Настраиваю ссылочную целостность. Update rule=cascade. При удалении записи из Master"а, при условии, что в Detail есть связанные с Master записи, вылетает ошибка "Master has detail records. Cannot delete or modify". Как с этим бороться?


 
MsGuns ©   (2003-03-05 22:23) [1]

Для парадокса какскад не работает. Правда, можно через DataModule->Diagram, но не советую - при любых изменениях, напрмер, в десктопе, модуль "летит" бесповоротно (и не только он)

Выход один: "спускаться" в детал и там в цикле удалять. Хуже с апдейтом - при изменении связующего ключа в детале весьма высока вероятность общего "полета" индексов и ключей физ.таблицы.

Проще использовать вместо таблиц запросы и события BeforeDelete


 
mike-d ©   (2003-03-06 01:36) [2]

> Pat © (05.03.03 21:38)
"Master has detail records. Cannot delete or modify"
Нормальная реакция BDE. Где-то в HELP (забыл ссылку, к сожалению) так и написано, что при попытке удаления записи имеющей дочерние - это дело блокируется. Сначала надо ручками удалить все дочерние. Зато каскадное изменение ключа - как из пулемета. (См. BDE-Help-Integrity constraints)
> MsGuns © (05.03.03 22:23)
> Для парадокса какскад не работает.

Не согласен. При создании таблиц в Database Desktop назначаешь это самое "referential integrity" - и все работает тип-топ (в однопользовательском, локальном варианте, в сети не пробовал...) - правда это не освобождает от назначения Master-Detail в программе...


 
Grom   (2003-03-06 08:56) [3]

Таже проблема. ставишь Update rule=cascade. потом смотришь через Sql explorer, в таблицах на соботытие update стоит cascade, а на delеte стоит restrict. хотя в хелпе Database Desktop написано что должно на delete удалять записи в дочерней таблице.
Выход нашел тока через события BeforeDelete в Delphi.


 
VAleksey ©   (2003-03-06 10:17) [4]

А другого пути нет.
Я не сказал бы что это обман, просто мастера из борланда
чуть-чуть не договаривают.



Страницы: 1 вся ветка

Текущий архив: 2003.03.24;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
6-76560
Anton
2003-01-29 22:15
2003.03.24
Есть ли ограничение на размер файла передаваемого по FTP


1-76451
msoftware
2003-03-12 09:06
2003.03.24
Как нормально добавить Bitmap в ImageList?


8-76538
jen_bond
2002-12-11 12:12
2003.03.24
Рисование объекта


4-76715
ogonez
2003-01-28 21:19
2003.03.24
окна классы


1-76509
boband
2003-03-12 09:45
2003.03.24
Динамические массивы и SetLength