![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Trigger for Delete [D6, MSSQL]
skiph © (2002-12-04 07:29:00)Понимаю, что вопрос ламерский, но возникла проблема. Есть 2 таблицы: Publication c первичным ключем ID_Public и Authors с внешним ключем ID_Publ (связан с ID_Public). При удалении записей из Publication, естественно, выдается ошибка, что в дочерней таблице есть зависящие записи, поэтому удаление не возможно. Для Publication написал триггер:
CREATE TRIGGER [TRIGGER NAME] ON [Publication]
FOR DELETE
AS DELETE Authors
FROM Authors INNER JOIN deleted
ON ID_Publ=ID_Public
Который, по идее, должен удалять записи из Authors, соответствующие записям из deleted.
Однако ошибка возникае по прежнему.
skiph (2002-12-05 04:26:00) [1]Спасибо
asmith (2002-12-04 14:04:00) [2]Либо писать для удаления хранимые процедуры, которые все сделают в нужном порядке.
Александр Спелицин (2002-12-04 09:37:00) [3]Все верно. Сначала происходят всякие проверки, потом удаления, а уже затем только выполняются триггеры. Переходите на SQL2000. Там есть поддержка каскадного удаления/обновления.