![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Удаление записей через триггер
Flagman © (2003-01-06 22:56:00)Три связных таблицы: "Категории" -> "Объекты" -> "Составляющие объекта". Соответственно: CAT_ID -> CAT_ID, ID -> ID.
Можно ли в триггере BeforeDelete таблицы "Категории" удалить все записи из таблицы "Составляющие объекта" связанные с записями таблицы "Объекты" связанными с записями таблицы "Категории", а затем удалить все записи из таблицы "Объекты" связанные с удаляемой записью таблицы "Категории"? Может путано объяснил, но точнее не получается :) Спасибо заранее.
Flagman (2003-01-07 18:37:00) [1]Вопрос снят, спасибо Alexandr.
Flagman (2003-01-07 17:47:00) [2]Переделал по-другому... Все вроде работает, но если вставить новую запись в "Категории", потом в "Объекты", потом в "Составляющие объекта" и попробовать удалить новую запись из "Категорий" один черт возникает DeadLock. Причем если прогу закрыть после заведения записей, а потом открыть снова, то deadlock"a не возникает - все удаляется корректно. Транзакцию уже commit"чу после вставки каждой записи :) Мож я че-то не понимаю...
Alexandr (2003-01-07 11:19:00) [3]описание таблиц,триггеров и foreign key приведи, приведи запрос который deadlock выдает
Flagman (2003-01-07 11:09:00) [4]Дело в том, что если я делаю два триггера BeforeDelete к таблицам "Категории" и "Объекты" в которых удаляю записи из подчиненных таблиц, то при удалении записи в таблице "Категории" из Delphi, возникает ошибка DeadLock :( А как в одном триггере это сделать, я пока не понял... Вот и спросил...
Alexandr (2003-01-07 07:54:00) [5]а что, не получается?
Или ты просто так спросил?