ÉVALUATION EN BASE DE DONNÉE TEST  05/ XX   

 

EXAMEN BASE DE DONNÉE MCD, MLD, Algebre relationnelle, normalisation, sql.

Exercice 01 :  /(04 pts)

Dans la base de donnee d'une societe de transport, la relation suivante décrit pour les jours du mois en cours les affectations des conducteurs de bus aux lignes: Affectation (Nligne, Nconducteur, jour). Plus précisément, cette relation signifie que tel jour, tel conducteur est affecté à telle ligne de bus. Considérons indépendamment les unes des autres les contraintes potentielles suivantes: (a) Un conducteur ne peut pas travailler sur deux lignes différentes le même jour, (b) Un conducteur fait les mêmes lignes tous les jours où il travaille; (c) Un conducteur ne fait qu'une seule ligne; (d) Une ligne est toujours parcourue par les mêmes conducteurs; (e) Une ligne n'est parcourue que par un seul conducteur; (f) Un conducteur ne fait pas la même ligne deux jours différents. Pour chacune de ces contraintes, définir la (ou les) dépendance fonctionnelle qui lui correspond(ent).

 

Exercice 02 : SQL/(8 pts)

Proposer un schéma conceptuel qui représente le domaine d'application suivant Les patients d'un hôpital sont répartis dans les services (caractérisés chacun par un nom identifiant, sa localisation, sa spécialité) de ce dernier. A chaque patient peuvent être prescrits des remèdes. Un remède est identifié par son nom et caractérisé par son type, son fabricant et l'adresse de ce dernier. Chaque prescription d'un remède à un patient est faite par un médecin à une date donnée pour une durée déterminée. On ne peut rédiger plus d'une prescription d'un remède déterminé pour un même patient le même jour. Chaque patient est identifié par un numéro d'inscription. On on connaît le nom, l'adresse et la date de naissance. Chaque médecin appartient à un service. Il est identifié par son nom et son prénom.

Suggestion. On sera particulièrement attentif à la notion de prescription.

Exercice 03 : Forme Normale /(4 pts)

Nous considérons ce schéma relationnel résultant d'une première enquête:

CLIENT(NumClient, Raison Sociale, Num Representant, Tauxrepresentant)

D'une part, chaque CLIENT n'est affecté qu'à un seul REPRSENTANT

1) Définir les termes suivants : Dépendance fonctionnelle, normalisation?

2) Rappeler les lois des trois premières formes normales

3) C'est quoi la forme normale de Boyce-codd?

4) Représenter les dépendances fonctionnelles de la relation CLIENT

5) Quelle est la forme normale de cette relation?

6) Donner le schéma équivalent de la troisième forme normale.

 

probleme :  /(8 pts)

On considère une entreprise de ventes de voitures. Un modèle de voiture est décrit par une marque, une dénomination. Une voiture est identifiée par un numéro de série et a un modèle, une couleur et un prix affiché et un coût (prix auquel la voiture est revenue). Des clients, on connaît le nom, le prénom et l'adresse. Parmi les clients, on trouve les anciens propriétaires des voitures d'occasion, ainsi que les personnes ayant acheté une voiture au magasin. Lorsqu’une vente est réalisée, on en connaît le vendeur (dont on connaît le nom, le prénom, l'adresse et le salaire fixe) et le prix d’achat réel (en tenant compte d’un rabais éventuel). Chaque vendeur touche une prime de 5% de la différence entre le prix d’achat affiché et le coût de la voiture. L’entreprise est répartie sur un certain nombre de magasins et chaque vendeur opère dans un magasin unique. Chaque voiture est, ou a été, stockée dans certains magasins et est vendue dans le dernier magasin où elle a été stockée. On garde trace des dates d’arrivée dans et de départ des magasins. Un transfert de voiture entre deux magasins se fait dans la journée.

Questions :
1. Donner un diagramme Entité/Association pour représenter ces données.
2. Donner un schéma de base de données correspondant à ce diagramme.
3. Écrire les requêtes suivantes en SQL :
   (a) Donner la liste des voitures (numéro) vendues après le 15 avril 2007.
   (b) Donner la voiture qui a rapporté le plus d'argent.
   (c) Donner le vendeur ayant accordé le plus gros rabais.
   (d) Les bénéfices de chaque magasin pour le mois de janvier 2007.
   (e) Le meilleur client (celui ayant rapporté le plus d'argent à l'entreprise).
   (f) La marque pour laquelle on a accordé le plus de rabais.
4. Écrire en algèbre relationnelle une requête pour obtenir la voiture ayant le coût le plus élevé. Donner, parmi les requêtes précédentes, celles qui peuvent être traduites en algèbre relationnelle.

 
 

Solution :

{Exercice 01 : 4pts}}

Pour chacune de ces contraintes, définir la (ou les) dépendance(s) fonctionnelle(s) ou multivaluće(s) qui lui correspond(ent):

  1. a) No-Conducteur, jour → No-Ligne
  2. b) No-Conducteur → jour | No-Ligne

Exemple :

No-Conducteur Jour No-Ligne
1 121 41
1 121 42
1 121 43
2 122 41
2 122 42
2 122 43
  1. c) No-Conducteur → No-Ligne
  2. d) No-Ligne → jour | No-Conducteur

Exemple :

No-Ligne Jour No-Conducteur
41 121 1
41 121 2
41 121 5
42 122 1
42 122 2
42 122 5
  1. e) No-Ligne → No-Conducteur
  2. f) No-Conducteur, No-Ligne → jour

 

EXERCICE 02 : 

Mcd pre cription

Exercice 03 : 04 pts

1. Définitions

  1. a) La dépendance fonctionnelle

    La dépendance fonctionnelle est une relation qui existe lorsqu'un attribut détermine de façon unique un autre attribut. Soient R (A1, A2, ..., An) un schéma de relation, X et Y des sous-ensembles de A1, A2, ..., An. On dit que X détermine Y, ou que Y dépend fonctionnellement de X, si et seulement s'il existe une fonction qui, à partir de toute valeur de X, détermine une valeur unique de Y.

  2. b) La normalisation

    La normalisation est le processus de suppression des données redondantes de la base de données en fractionnant la table d'une manière bien définie afin de maintenir l'intégrité des données.

2. Réponse

Les différents types de normalisation sont :

  • Première forme normale (1NF) : Une relation est dite en 1NF uniquement lorsque toutes les entités de la table contiennent des valeurs uniques ou atomiques.
  • Deuxième forme normale (2NF) : Une relation est dite en 2NF uniquement si elle est en 1NF et que tout l'attribut non clé de la table dépend entièrement de la clé primaire.
  • Troisième forme normale (3NF) : Une relation est dite être dans 3NF seulement si elle est dans 2NF et chaque attribut non clé de la table n'est pas transitivement dépendant de la clé primaire.

3. Réponse

BCNF est la forme Boyce Code Normal. Il s'agit de la version supérieure de 3NF qui n'a pas de multiples clés candidates qui se chevauchent.

4. Représentation des dépendances fonctionnelles

  • NumClient → RaisonSociale, NumRepresentant, TauxRepresentant
  • NumRepresentant → NumClient
  • NumRepresentant → TauxRepresentant

5. Analyse

Cette relation est en 2NF (n'est pas en 3NF).

6. Schéma équivalent en 3NF

Client (NumClient, RaisonSociale, NumRepresentant)
Representant (NumRepresentant, TauxRepresentant)

Problème : 08pts

1. Diagramme Entité/Association

Correction :

Mcd voiture

2. Schéma de base de données


Voiture(numserie, couleur, prix, cout, marque, modele, nomp?, prenomp?)
Arrivee(numserie, date, magasin)
Client(nom, prenom, adresse)
Vendeur(nom, prenom, adresse, salairefixe, magasin)
Vente(numero, date, prixachat, numserie, noma, prenoma, nomv, prenomv)
      

3. Requêtes SQL


(a) SELECT Voiture.numserie
    FROM Voiture, Vente
    WHERE Voiture.numserie = Vente.numserie
    AND date > '2007-04-15';

(b) SELECT Voiture.numserie
    FROM Voiture, Vente
    WHERE Voiture.numserie = Vente.numserie
    AND prixachat - cout >= ALL (
        SELECT prixachat - cout
        FROM Voiture, Vente
        WHERE Voiture.numserie = Vente.numserie
    );

(c) SELECT nomv, prenomv
    FROM Vente, Voiture
    WHERE Voiture.numserie = Vente.numserie
    AND prix - prixachat >= ALL (
        SELECT prix - prixachat
        FROM Voiture, Vente
        WHERE Voiture.numserie = Vente.numserie
    );

(d) SELECT magasin, SUM(benef) as benefice
    FROM (
        SELECT nom, prenom, magasin,
        SUM(prixachat - cout - 0.5 * (prix - cout)) - salairefixe as benef
        FROM Voiture, Vente, Vendeur
        WHERE Voiture.numserie = Vente.numserie
        AND nomv = nom
        AND prenomv = prenom
        AND date BETWEEN '2007-01-01' AND '2007-01-31'
        GROUP BY nom, prenom, magasin
    ) BeneficesVendeurs
    GROUP BY magasin;

(e) SELECT nomc, prenomc
    FROM Vente, Voiture
    WHERE Voiture.numserie = Vente.numserie
    GROUP BY nomc, prenomc
    HAVING SUM(prixachat - cout - 0.5 * (prix - cout)) >= ALL (
        SELECT SUM(prixachat - cout - 0.5 * (prix - cout))
        FROM Vente, Voiture
        WHERE Voiture.numserie = Vente.numserie
        GROUP BY nomc, prenomc
    );

(f) SELECT marque
    FROM (
        SELECT marque, COUNT(*) as nb_rabais
        FROM Voiture, Vente
        WHERE Voiture.numserie = Vente.numserie
        AND prix - prixachat < 0
        GROUP BY marque
    ) MarqueRabais
    ORDER BY nb_rabais DESC
    LIMIT 1;
   

4. Requête en algèbre

Πnumserie(Voiture)\numseriecout < cout2(Voiture × ρcout/cout2cout(Voiture)))))

Les requêtes a, b et c peuvent être traduites en algèbre relationnelle.

Si vous avez trouvé les examens corrigés en Base de donnee de Mr JoëlYk intéressants et utiles, pourquoi ne pas les partager avec d'autres personnes qui pourraient également en bénéficier ? Partagez ce lien sur les réseaux sociaux ou envoyez-le à vos amis et collègues. Vous pourriez aider quelqu'un à améliorer ses compétences en programmation ou à trouver des solutions à des problèmes complexes. N'oubliez pas que la connaissance doit être partagée pour grandir. Merci pour votre soutien et votre partage !

Contact WhatsApp : +237 652027193 | Réaliser Par Mr Joël_Yk

Télécharger L'exercice Sous Forme de PDF

base de donnee examen examen base de donnee sujet 5 html

Taille : 1.47 Mo

Télécharger

Aucune note. Soyez le premier à attribuer une note !

Ajouter un commentaire

Anti-spam