Module 140
Administrer et exploiter des bases de données
Jour 7 - PL/SQL - Contraintes inter-associatives
# Objectifs du jour
Objectifs du jour
-
Mise à jour du Mindmap
-
Suite de l'exercice 5.4 des triggers
-
Exercice sur une contrainte inter-associative
-
Correction de l'exercice
Ne pas oublier de démarrer Lanschool !
# Mise à jour du mindmap
Modification du mindmap
-
Lever la main quand vous avez trouvé l'erreur :
CREATE OR REPLACE PROCEDURE afficher_message(p_nom OUT VARCHAR2) IS
BEGIN
DBMS_OUTPUT.PUT_LINE('Bonjour, ' || p_nom || ' !');
END;
/
# Suite des exercices
Suite de l'exercice 5.4
-
Suite de l'exercice 5.4
-
Voir le corrigé de la première partie
-
- Faire la suite : la partie des triggers
Contraintes inter-associatives
# Contrainte inter-associative
Les contraintes inter-associatives en base de données sont des règles qui expriment des relations ou des restrictions entre deux ou plusieurs associations dans un modèle entité-association.
Ces contraintes permettent de définir des conditions plus complexes que les simples cardinalités et jouent un rôle crucial dans la modélisation précise des données.
Exemple :
# Contrainte inter-associative
Cas des communes
Voici la modélisation des communes appartenant à un district qui appartiennent eux-même à un canton.
Exemple : Bure -> Porrentruy -> Jura
# Contrainte inter-associative
Cas des communes
Toutefois si on prend la liste officielle des communes, on constate que les communes peuvent appartenir à un canton directement :
# Contrainte inter-associative
Cas des communes
Voici le schéma modifié :
# Contrainte inter-associative
Cas des communes
Problème : Avec notre modélisation actuelle, une commune pourrait être reliée à rien (pas de district ni de canton), de même qu'elle pourrait être reliée aux deux (district et canton).
District | Canton | Résultat |
---|---|---|
Non | Non | Invalide |
Oui | Non | Valide |
Non | Oui | Valide |
Oui | Oui | Invalide |
Voici ce que nous souhaiterions :
# Contrainte inter-associative
Cas des communes
On constate que le résultat souhaité correspond à un XOR :
District | Canton | Résultat |
---|---|---|
Non | Non | Invalide |
Oui | Non | Valide |
Non | Oui | Valide |
Oui | Oui | Invalide |
A | B | A XOR B |
---|---|---|
0 | 0 | 0 |
1 | 0 | 1 |
0 | 1 | 1 |
1 | 1 | 0 |
# Contrainte inter-associative
Cas des communes
Nous pouvons donc ajouter ces contraintes inter-associative XOR entre les relations correspondantes :
# Contrainte inter-associative
Exercice 6.1
Exercice des communes avec
contrainte inter-associative XOR :
# Contrainte inter-associative
Cas des communes
# Travail pour la prochaine fois
Travail pour la prochaine fois
-
Pas de devoir spécifique -> Profitez-en pour mettre à jour vos notes et réviser
-
Mettre à jour ses notes
-
Mettre à jour le Mindmap
-
Révision (Flashcards) : [https://app.wooflash.com/join/OS7OUAGS](https://app.wooflash.com/join/OS7OUAGS?from=1)
Merci de votre attention 😊
Bonne fin de journée !
M140 - Jour 7
By paranor
M140 - Jour 7
- 86