ÎncepețiÎncepe gratuit

Modifică comportamentul de integritate referențială al unei chei

Până acum, ai implementat trei constrângeri de cheie externă:

  1. professors.university_id către universities.id
  2. affiliations.organization_id către organizations.id
  3. affiliations.professor_id către professors.id

Aceste chei externe au în prezent comportamentul ON DELETE NO ACTION. Acum vei modifica acel comportament pentru coloana care referențiază organizations din affiliations. Dacă o organizație este ștearsă, toate afilierile sale (ale oricărui profesor) ar trebui să fie și ele șterse.

Modificarea unei constrângeri de cheie nu funcționează cu ALTER COLUMN. În schimb, trebuie să DROP-uiești constrângerea de cheie și apoi să ADD-augi una nouă cu un comportament ON DELETE diferit.

Pentru a șterge constrângerile, ai nevoie de numele lor. Această informație este stocată tot în information_schema.

Acest exercițiu face parte din cursul

Introducere în baze de date relaționale în SQL

Vezi cursul

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

-- Identify the correct constraint name
SELECT constraint_name, table_name, constraint_type
FROM information_schema.___
WHERE constraint_type = 'FOREIGN KEY';
Editează și rulează codul