Université BATNA 2 L2 informatique 2021-2022 Faculté des Mathématiques et de l'

Université BATNA 2 L2 informatique 2021-2022 Faculté des Mathématiques et de l'informatique Module : Base de données TD3 (modèle E/A modèle relationnel) Exercice1: Construire des schémas relationnels à partir des diagrammes entité-association présentés ci-dessous. A) B) C) 1,1 Est responsable 1,n NManager Manager 0,1 1,1 1,n Travail 1,1 NDep Intitulé NEmp NomEmp PrénomEm AdrEmp Département Employé Est un Réponse : A. Le modèle relationnel est le suivant : Patient ( MatriculeP, NomP, PrenomP ) Consultation ( NumCons, dateCons, #MatriculeP, #MatriculeM ) Medecin ( MatriculeM, NomM, PrenomM ) Medicament ( CodeM, LibelléM, NbParJour ) Prescrit ( #NumCons, #CodeM ) B. Le modèle relationnel correspondant est le suivant : Genre ( id_genre, genre, # id_genre1 ) Lieu ( id_lieu, nom_lieu, adresse_lieu, capacité_debout, capacité_assis) Client ( id_client, nom_client, email, code_fidélité ) Artiste ( id_artiste, nom_artiste, nationalité, # id_genre ) Commande ( id_commande, date_commande, etat, # id_client ) Spectacle ( id_spectacle, titre, date_spectacle, #id_artiste, #id_lieu ) Artiste secondaire (# id_artiste, # id_spectacle ) Billet ( id_billet, place, prix, #id_commande, #id_spectacle ) C. Le modèle relationnel est le suivant : Département ( NDep, Intitulé ) Employé (NEmp, , NomEmp, PrénomEm, , AdrEmp, #NDep, #NManager) Manager (NManager,# NEmp) Exercice 2 : Soit la relation R (A,B,C) avec l’extension suivante : A B C a1 b1 c1 a2 b1 c2 a2 b2 c3 a1 b2 c2 a2 b3 c3 a1 b3 c3 Quelle est la clé primaire de la relation R ? Réponse : Selon l’extension donnée, l’attribut A ne peut pas être clé pour R car la valeur a1 de A se répètent dans la table. De même pour l’attribut B (b1) et C (c2). (A, B) est une clé composée de R car les valeurs de (A, B) ne se répètent pas dans R. Exercice 3 : Une entreprise souhaite suivre les diverses formations de ses employés au cours de leur carrière. Pour cela, le responsable des ressources humaines a réalisé une base de données dont le modèle relationnel vous est fourni ci-dessous : Salarié (NomSal, PrenomSal, DateNaisSal, #NumDip) Diplôme (NumDip, NiveauDip) Formation (NumF, NomF) Suivre (#NumF, #NomSal) 1. Deux membres d’une même famille peuvent ils être ajoutés à la base de données ? Justifier votre réponse. 2. Connaît-on l’ancienneté d’un salarié dans l’entreprise ? Si non, apporter les modifications nécessaires. 3. Un salarié peut-il suivre plusieurs fois la même formation au cours de sa carrière ? Si non, apporter les modifications nécessaires. Réponse : 1. Deux membres d’une même famille ne peuvent pas être ajoutés à la base de données puisque la clé de la relation Salarié et NomSal. La même valeur de la clé ne peut pas figurer plus d’une fois dans la table Salarié. 2. Non, on peut ajouter dans la table Salarié l’attribut Date_recrutement_salarié ou un autre attribut ancienneté qui sera incrémenter chaque année. 3. Selon le schéma de la BDD non (Un salarié ne peut pas suivre plusieurs fois la même formation au cours de sa carrière). Pour cela il faut ajouter dans la relation Suivre l’attribut Date_formation, dans ce cas la clé est NumF+ NomSal + Date_formation. Suivre( NumF, NomSal , Date_formation) Exercice 4 : Soit le modèle relationnel des ressources humaines d’une entreprise : Agence (NumAg, NomAg, VilleAg) Salarié (NumSal, NomSal, PrenomSal, AdrsSal, #NumAg, #CodeServ ) Service (CodeServ, NomServ) 1. Lors de l’utilisation de la BDD, Des erreurs ont empêché l’exécution des opérations suivantes. — Insérer le tuple <1, ’Ventes’> dans la table Service — Insérer le tuple <1, ’Martin’, ’Jean’, ’Annaba’, 13, 2> dans la table Salarié — Supprimer le tuple ayant CodeServ=1 de la table Service Expliquer les causes probables de chaque erreur. 2. Le gérant de cette entreprise désire connaître le salarié responsable de chaque agence. Le modèle relationnel permet-il de répondre à ce fait ? Si non, faire la modification nécessaire. Réponse 1.  Pour la 1ère erreur, on voit que le nombre d’attributs dans la relation Service est le même dans le tuple à insérer <1, ’Ventes’> de même pour le type des attributs. Donc la seule possibilité qui a empêché l’insertion c’est qu’il existe déjà dans la table Service un service avec le codeServ=1.  Pour la 2ème erreur, les causes probables qui ont empêché d’inserer le tuple <1, ’Martin’, ’Jean’, ’Annaba’, 13, 2> dans la table salarié sont :  Il se peut qu’il existe déjà dans la table Salarié un salarié avec NumSal=1  Il se peut qu’il n’existe pas dans la table Agence le NumAg=13  Il se peut qu’il n’existe pas dans la table Service le CodeServ=2  Pour la 3ème erreur, la cause qui a empêché de supprimer le tuple avec CodeServ=1 de la table Service c’est qu’il existe surement dans la table Salarié des salariés qui travaillent dans le servie de code=1. 2. Le modèle relationnel ne permet pas de connaître le salarié responsable de chaque agence. Donc pour répondre à cette requête on doit ajouter dans la table Agence la clé de la table Salarié NumSal comme clé étrangère car le responsable d’une agence est un salarié. Agence (NumAg, NomAg, VilleAg, # NumSal) uploads/S4/ td3-1.pdf

  • 42
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Sep 12, 2022
  • Catégorie Law / Droit
  • Langue French
  • Taille du fichier 0.3745MB