ПочатиПочніть безкоштовно

Змініть поведінку забезпечення посилальної цілісності для ключа

Дотепер ви застосували три обмеження зовнішнього ключа:

  1. professors.university_iduniversities.id
  2. affiliations.organization_idorganizations.id
  3. affiliations.professor_idprofessors.id

Зараз ці зовнішні ключі мають поведінку ON DELETE NO ACTION. Тут ви зміните цю поведінку для стовпця з посиланням на organizations у affiliations. Якщо організацію видалено, усі її афіліації (для будь‑якого професора) також мають бути видалені.

Змінити обмеження ключа через ALTER COLUMN не вийде. Натомість треба спочатку DROP обмеження ключа, а потім ADD нове з іншою поведінкою ON DELETE.

Щоб видалити обмеження, потрібно знати його назву. Цю інформацію також збережено в information_schema.

Ця вправа є частиною курсу

Вступ до реляційних баз даних у SQL

Переглянути курс

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

-- Identify the correct constraint name
SELECT constraint_name, table_name, constraint_type
FROM information_schema.___
WHERE constraint_type = 'FOREIGN KEY';
Редагувати та запускати код