Exercice 1
1. Modèle conceptuel de données
Le besoin de gestion des contrats des clients d’une société est modélisé avec ce schéma Entité /
Association :
1.Est-ce que dans ce modèle un client peut-il avoir plusieurs contrats ?
Solution : Oui, cardinalité maximale n sur CLIENT - CONTRAT
2.Est-ce qu’il peut y avoir un client qui n’a pas de contrats ?
Solution : Oui, cardinalité minimale 0 sur CLIENT - CONTRAT
3.Peut-on souscrire plusieurs prestations dans le même contrat ?
Solution : Oui, Cardinalité maximale n sur CONTRAT - PRESTATION
4.Peut-on trouver la même prestation dans plusieurs contrats ?
Solution : Oui, Cardinalité maximale n sur PRESTATION - CONTRAT
2. Modèle relationnel de données
Déduire à partir du modèle conceptuel précédant le modèle relationnel, en indiquant pour chaque relation :
•Les attributs
•La clé primaire
•Les clés étrangères
Solution :
http://drisshazzaf.typepad.com/oracle
1/4
CLIENT
NO_CLIENT
NOM
PRENOM
ADRESSE
CODE_POSTAL
VILLE
CONTRAT
NO_CONTRAT
LIBELLE
DATE_SIGNATURE
MODE_REGLEMENT
PRESTATION
CODE_PRESTATION
LIBELLE
MONTANT_HT
0,n
0,n
Souscrire
0,n
1,1
3. Algèbre relationnel
Soit le modèle relationnel qui gère les fonctions des employés dans une société :
EMPLOYE
CP Numéro
Nom
Prénom
Salaire
Date_entrée
CE1 Code_fonction
FONCTION
CP Code_fonction
Titre
Niveau_hiérarchique
Une fonction est identifiée par un code et possède un titre et un niveau hiérarchique.
Un employé est identifié par un numéro et possède les informations suivantes :
• Nom : Nom de l’employé
• Prénom : Prénom de l’employé
• Salaire :Salaire de l’employé en €
• Date_entrée :Date d’entrée de l’employé dans la société
• Code_fonction : Code de la fonction occupée par l’employé ( Clé étrangère avec la table FONCTION
)
Exprimer les requêtes suivantes en algèbre relationnel :
1.Les différents codes fonctions dans la relation EMPLOYE.
Solution : Π Code_fonction ( EMPLOYE)
2.Nom et Prénom des DBA qui ont un salaire supérieur à 3000 dans la relation EMPLOYE.
Solution : Π Nom , Prénom ( σ Salaire > 3000 Λ CODE_FONCTION = D