Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Вопрос-Ответ Новый топик    Ответить
 Как организовать какскадное удаление в Microsoft SQL  [new]
Дубоделов Игорь
Guest
Как правильно организовать какскадное удаление из таблиц в Microsoft SQL.
При удалении из таблицы записи, которая связана с другими таблицами, генеруется исключительная ситуация.
Неужели надо вначале удалить записи из связанных таблиц?

Нужен простой способ удаления записи. Если удаляемая запись связана с записями из других таблиц, то
надо удалить все связанные записи из других таблиц.
Microsoft SQL Server.

Заранее благодарен.
Дубоделов Игорь.
Dubodeloff@mail.ru
23 ноя 00, 21:05    [31181]     Ответить | Цитировать Сообщить модератору
 RE:Как организовать какскадное удаление в Microsoft SQL  [new]
Gavr
Guest
В SQL7.0 внешние ключи не поддерживают каскадное удаление. Поэтому их - отключить и пользоваться триггерами.
6 янв 01, 15:01    [31182]     Ответить | Цитировать Сообщить модератору
 RE:Как организовать какскадное удаление в Microsoft SQL  [new]
Ruslan Akmeev
Guest
Только триггерами.
Другого способа нет.
23 янв 01, 11:02    [31183]     Ответить | Цитировать Сообщить модератору
 RE:Как организовать какскадное удаление в Microsoft SQL  [new]
alexeyvg
Guest
Почему "Другого способа нет"? В MSSQL2000 есть каскадный FOREIGN KEY:
FOREIGN KEY
[ ( column [ ,...n ] ) ]
REFERENCES ref_table [ ( ref_column [ ,...n ] ) ]
[ ON DELETE { CASCADE | NO ACTION } ]
[ ON UPDATE { CASCADE | NO ACTION } ]
Автор вопроса, к сожалению, не указал версию SQL...
23 янв 01, 14:45    [31184]     Ответить | Цитировать Сообщить модератору
Все форумы / Вопрос-Ответ Ответить