Продължете към съдържанието
Начало » Блог » Как да проверим дали ON DELETE CASCADE е включено?

Как да проверим дали ON DELETE CASCADE е включено?

Какво е ON DELETE CASCADE или каскадно изтриване?

Опцията ON DELETE CASCADE служи за да укажете дали искате редовете да бъдат изтрити в дъщерна таблица, когато съответните редове са изтрити в родителската таблица. Ако не укажете каскадно изтриване, по подразбиране записите в дъщерната таблица няма да бъдат изтрити.
Използвайки този модел на структуриране ще си спестите писане на допълнителни SQL заявки за триене за всяка една дъщерна таблица. Освен това би било редно да използвате и транзакции (database transaction) при изпълнение на подобна група от SQL заявки, за да може ако една от тях не се изпълни да може да възстанови останалите. В противен случай базата данни ще се напълни с висящи записи, които само заемат място. Създаването на правилна архитектура на една база данни е ключово за живота на един проект.

Как да проверим дали ON DELETE CASCADE е включено за определени таблици?

Изпълнявайки тази заявка ще получите списък за всички таблици
select * from INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS where DELETE_RULE=’CASCADE’

Ако искате таблиците от определена база данни, използвайте тази заявка:
select * from INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS where DELETE_RULE=’CASCADE’ and CONSTRAINT_SCHEMA=’именабаза_данни’

Надяваме се информацията на тази страница да Ви е била полезна.