CommencerCommencer gratuitement

Modifier le comportement d'intégrité référentielle d'une clé

Jusqu'à présent, vous avez implémenté trois contraintes de clé externes :

  1. professors.university_id à universities.id
  2. affiliations.organization_id à organizations.id
  3. affiliations.professor_id à professors.id

Ces clés externes ont actuellement le comportement ON DELETE NO ACTION. Ici, vous modifierez ce comportement pour la colonne faisant référence à organizations à partir de affiliations. Si une organisation est supprimée, toutes ses affiliations (par tout professeur) doivent également être supprimées.

La modification d'une contrainte clé n'est pas possible avec ALTER COLUMN. Vous devez SUPPRIMER la contrainte clé, puis AJOUTER une nouvelle contrainte avec un comportement ON DELETE différent.

Pour supprimer des contraintes, il est toutefois nécessaire de connaître leur nom. Ces informations sont également disponibles sur information_schema.

Cet exercice fait partie du cours

Introduction aux bases de données relationnelles en SQL

Afficher le cours

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

-- Identify the correct constraint name
SELECT constraint_name, table_name, constraint_type
FROM information_schema.___
WHERE constraint_type = 'FOREIGN KEY';
Modifier et exécuter le code