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

Вниз

проблеммы с trigger ом   Найти похожие ветки 

 
kvit ©   (2004-01-12 16:04) [0]

БД управляется MS SQL7.0
Есть таблица Table1 и Table2, связанные ключами "один ко многим" по полю <KOD>.
Для Table1, имеющей первичный ключ, создаю триггер для каскадного удаления из таблицы Table2.
Хочу теперь удалить запись из Table1, но вот беда:
ошибка целостности опережает срабатывание триггера.
Подскажите как разрешить проблему.


 
Academic ©   (2004-01-12 16:06) [1]

триггер болжен быть BEFORE DELETE


 
kvit ©   (2004-01-12 16:11) [2]

Где ставить BEFORE?

Вот оригинал тригера:

CREATE TRIGGER [Ttrigg1] ON [TABLE1]
FOR DELETE
AS

declare @kod int
select @kod=i.kod from deleted i
delete from table2 where kod=@kod


 
GLFox   (2004-01-12 16:11) [3]

Sorry, но мне интересно (по причине отсутствия реального опыта работы M$ SQL), а foreign key там не делает каскадного удаления (если там он вообще присутствует)?


 
Johnmen ©   (2004-01-12 16:16) [4]

>kvit © (12.01.04 16:04)

Никаких своих триггеров для этого не надо. Просто в описании FK надо ON CASCADE DELETE проставить.


 
SergSuper   (2004-01-12 16:21) [5]

В MS SQL7.0 нет каскадного удаления через foreign key, как и нет триггеров BEFORE.
Надо ставить 2000-й и вообще не писать триггеров или писать каскадное удаление в триггере, а foreign key убрать


 
Ega23 ©   (2004-01-12 16:35) [6]

А нужно ли каскадное удаление в триггере делать? Я обычно такие вещи через ХП делаю, т.к. один раз всю инфу за последний день случайно убил.


 
Academic ©   (2004-01-12 16:51) [7]

М-да, в 7 SQLe действительно все триггеры AFTER.
Сомневаюсь однако про отсутствие ON CASCADE DELETE у FK
в BookOnline нет на этот счет сведений



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

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

Наверх




Память: 0.48 MB
Время: 0.044 c
3-16039
Alexey K
2004-01-08 15:17
2004.02.06
HELP Проблема при многопользовательском доступе


4-16815
Segreen
2003-11-27 18:16
2004.02.06
Контрол с фокусом...


14-16677
gishu
2003-12-29 08:50
2004.02.06
SFX на KOL


3-16132
Layner
2004-01-14 16:31
2004.02.06
Подскажите плз, как запретить перетаскивание колонок в DBGrid?


4-16788
Dimmu
2003-12-01 14:28
2004.02.06
Создание сервиса используя TService