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

examen sql, examen dependances fonctionnelles, examen base de donnee, examen sql

Exercice 01 : Dépendances fonctionnelles (3 points)

On considère l’ensemble des dépendances fonctionnelles suivantes :

e, f, g → t
a → v, b
b → c, w
c → d, z
d → c, u

  1. Définir le schéma équivalent en 3e forme normale (indiquer les clés primaires et étrangères).

Exercice 02 : (5 points)

Soit la base de données relationnelle, PUF, de schéma:

  • U(NU, NomU, Ville)
  • P(NP, NomP, Couleur, Poids)
  • F(NF, NomF, Statut, Ville)
  • PUF(NP, NU, NF, Quantité)

Clés primaires et étrangères:

  • NP référence P.NP
  • NU référence U.NU
  • NF référence F.NF

Décrivant le fait que:

  • U: une usine est décrite par son numéro NU, son nom NomU, la ville Ville dans laquelle elle est située
  • P: un produit est décrit par son numéro NP, son nom NomP, sa couleur Couleur, son poids Poids
  • F: un fournisseur est décrit par son numéro NF, son nom NomF, son statut (fournisseur sous-traitant, fournisseur-client, etc.), la ville Ville où il est domicilié
  • PUF: le produit de numéro NP a été livré à l'usine de numéro NU par le fournisseur de numéro NF dans une quantité donnée.
  1. Donner le numéro, le nom et la ville de toutes les usines.
  2. Donner le numéro, le nom et la ville de toutes les usines de Londres.
  3. Donner les numéros des fournisseurs qui approvisionnent l'usine n°1 en produit n°1.
  4. Donner le nom et la couleur des produits livrés par le fournisseur n°1.
  5. Donner les numéros des fournisseurs qui approvisionnent l'usine n°1 en un produit rouge.

Exercice 03: SQL (12 points)

Soit la base de données BANQUE contenant les tables suivantes:

  • AGENCE(* Num_Agence, Nom, Ville, Actif)
  • CLIENT(* Num_Client, Nom, Prenom, Ville)
  • COMPTE(* Num_Compte, Num_Agence#, Num_Client#, Solde)
  • EMPRUNT(* Num_Emprunt, Num_Agence#, Num_Client#, Montant)

Les clés primaires sont précédées d'une étoile (*) et les clés étrangères sont suivies d'un astérisque (#).

1. Requêtes SQL

  1. Créer un rôle pour un employé de l'agence bancaire qui peut uniquement consulter les informations des clients et des comptes sans pouvoir modifier ou supprimer des données.
  2. Comment restreindre l'accès à la table EMPRUNT afin que seuls les utilisateurs ayant le rôle employé banque puissent y insérer (INSERT) des données ?
  3. Créer un déclencheur sur la table COMPTE pour mettre à jour la table EMPRUNT dès que le solde d'un compte est mis à jour.

2. Requêtes SQL :

  1. Les clients n’ayant pas de compte dans la même agence que Liliane Bettencourt. (Tableau résultat : Num_Client).
  2. Les agences ayant un actif plus élevé que toutes les agences de Saint-Ouen. (Tableau résultat : Num_Agence).
  3. Le solde moyen des comptes clients, pour chaque agence dont le solde moyen est supérieur à 10000. (Tableau résultat : Num_Agence, Solde_Moyen).
  4. Le nombre de clients de l’agence de nom “Paris-BNF” dont la ville n’est pas renseignée dans la relation CLIENT. (Tableau résultat : Nombre).
  5. Les clients ayant un compte dont le solde est supérieur à la somme totale de tous les actifs des agences de Saint-Ouen. (Tableau résultat : Num_Client).
  6. Les clients dont la somme du solde de tous les comptes est inférieure à l’actif de chaque agence. (Tableau résultat : Num_Client).

La persévérance, c’est ce qui rend l’impossible possible, le possible probable et le probable réalisé.

Contact WhatsApp : +237 652027193 | Réalisé par Mr Joël_Yk.

Solution :

 

.............-- GROUPE GENIUS

Correction Examen Base de Donnée

Exercice 01 : Dépendances fonctionnelles (3 points)

On considère l’ensemble des dépendances fonctionnelles suivantes :

e, f, g → t
a → v, b
b → c, w
c → d, z
d → c, u

  1. Définir le schéma équivalent en 3e forme normale (indiquer les clés primaires et étrangères).

SOLUTION :

Pour normaliser en 3NF, nous devons nous assurer qu'il n'y a pas de dépendances transitives et que chaque attribut non clé est dépendant uniquement de la clé primaire. Voici les relations normalisées :

  • R1(e, f, a) où {e, f, a} est la clé primaire.
  • R2(e, f, g, t) où {e, f, g} est la clé primaire.
  • R3(a, v, b) où a est la clé primaire et b est une clé étrangère référençant R4.
  • R4(b, w, c) où b est la clé primaire et c est une clé étrangère référençant R5.
  • R5(c, d, z) où c est la clé primaire et d est une clé étrangère référençant R6.
  • R6(d, u) où d est la clé primaire.

Les clés étrangères sont définies comme suit :

  • Dans R3, b est une clé étrangère faisant référence à la clé primaire de R4.
  • Dans R4, c est une clé étrangère faisant référence à la clé primaire de R5.
  • Dans R5, d est une clé étrangère faisant référence à la clé primaire de R6.

Exercice 02 : (5 points)

Soit la base de données relationnelle, PUF, de schéma :

  • U(NU, NomU, Ville)
  • P(NP, NomP, Couleur, Poids)
  • F(NF, NomF, Statut, Ville)
  • PUF(NP, NU, NF, Quantité)

Clés primaires et étrangères :

  • NP référence P.NP
  • NU référence U.NU
  • NF référence F.NF

Décrivant le fait que :

  • U : une usine est décrite par son numéro NU, son nom NomU, la ville Ville dans laquelle elle est située
  • P : un produit est décrit par son numéro NP, son nom NomP, sa couleur Couleur, son poids Poids
  • F : un fournisseur est décrit par son numéro NF, son nom NomF, son statut (fournisseur sous-traitant, fournisseur-client, etc.), la ville Ville où il est domicilié
  • PUF : le produit de numéro NP a été livré à l'usine de numéro NU par le fournisseur de numéro NF dans une quantité donnée.

Écrire en langage algébrique les requêtes suivantes :

  1. Donner le numéro, le nom et la ville de toutes les usines.
  2. Donner le numéro, le nom et la ville de toutes les usines de Londres.
  3. Donner les numéros des fournisseurs qui approvisionnent l'usine n°1 en produit n°1.
  4. Donner le nom et la couleur des produits livrés par le fournisseur n°1.
  5. Donner les numéros des fournisseurs qui approvisionnent l'usine n°1 en un produit rouge.

SOLUTION :

  1. πNU, NomU, Ville(U)
  2. πNU, NomU, VilleVille = 'Londres'(U))
  3. πNFNU = 1 AND NP = 1(PUF))
  4. πNomP, CouleurNF = 1(PUF) ⨝ P)
  5. πNFNU = 1 AND Couleur = 'rouge'(PUF ⨝ P))

Exercice 03 : SQL (12 points)

Soit la base de données BANQUE contenant les tables suivantes :

  • AGENCE(*Num_Agence, Nom, Ville, Actif)
  • CLIENT(*Num_Client, Nom, Prenom, Ville)
  • COMPTE(*Num_Compte, Num_Agence#, Num_Client#, Solde)
  • EMPRUNT(*Num_Emprunt, Num_Agence#, Num_Client#, Montant)

1. Requêtes SQL

  1. Créer un rôle pour un employé de l'agence bancaire qui peut uniquement consulter les informations des clients et des comptes sans pouvoir modifier ou supprimer des données.
    CREATE ROLE employe_banque;
    GRANT SELECT ON CLIENT, COMPTE TO employe_banque;
  2. Comment restreindre l'accès à la table EMPRUNT afin que seuls les utilisateurs ayant le rôle employé banque puissent y insérer (INSERT) des données ?
    REVOKE INSERT ON EMPRUNT FROM PUBLIC;
    GRANT INSERT ON EMPRUNT TO employe_banque;
  3. Créer un déclencheur sur la table COMPTE pour mettre à jour la table EMPRUNT dès que le solde d'un compte est inférieur à 1000€.
    CREATE TRIGGER solde_trigger
    AFTER UPDATE OF Solde ON COMPTE
    FOR EACH ROW
    WHEN (NEW.Solde < 1000)
    BEGIN
        UPDATE EMPRUNT
        SET Montant = Montant + 100
        WHERE Num_Client = NEW.Num_Client;
    END;
  4. Écrire une requête SQL pour trouver le nombre total de clients par ville.
    SELECT Ville, COUNT(*) AS Total_Clients
    FROM CLIENT
    GROUP BY Ville;
  5. Écrire une requête SQL pour obtenir la liste des agences avec le nombre total de comptes pour chaque agence.
    SELECT A.Nom, A.Ville, COUNT(C.Num_Compte) AS Total_Comptes
    FROM AGENCE A
    JOIN COMPTE C ON A.Num_Agence = C.Num_Agence
    GROUP BY A.Nom, A.Ville;

 

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