Pages - Menu

Pages

Examen Corrigé SGBD base de données SQL - Evaluation SGBDR - SQL Devoir SGBDR SQL

1.  Qu'est  ce  qu'un  SGBDR  Donnez  la  signification  des lettres ainsi  qu'une  définition détaillée ?
2.  Citez 6 exemples de SGBDR (3 commerciaux et 3 libres)
3.  Donnez les différents types de données
4.  Qu'est ce que l'intégrité référentielle (donnez une réponse détaillée) ?
5.  Qu'est ce que l'intégrité de domaine (donnez un exemple) ?
6.  Que représente le modèle relationnel ?
7.  Qu'est ce qu'une clé étrangère ?
8.  Que signifient les lettres SQL ?
9.  En SQL, que signifient les lettres LID

Soit la base de donnée suivante : 
 
          
10. Soulignez les clés primaires, rajoutez un # derrière les clés étrangères.
11. Donnez la li e (Nom) des restaurants de plus de 2 étoiles par ordre alphabétique.
12. Nom et adresse des restaurants qui ne proposent pas le menu 10.
13. Donnez  la  li e  (Nom,  Adresse) des restaurants qui  ne  vendent  pas de  boissons alcoolisées.
14. Nombre de menus par restaurant par ordre croissant du nombre de menu.
15. Nom  du restaurant,  nom  du chef,  nombre d‘étoiles,  prix mini,  moyen et maxi  d‘un menu dans chaque restaurant.
16. Nom du restaurant qui propose le menu le plus cher.
17. Liste des boissons en 'demi-bouteille  proposées par le restaurant 1.
18. Nom des restaurants qui proposent ”foie gras poêlé‘ en entrée.
19. Donnez la li e des restaurants (nom,  adresse,  téléphone) qui  proposent  un  plat  à base de ”canard‘.
20. Donnez  la  li e  (idem)  des  restaurants  ayant  le  même  nombre  d'étoiles  que  le restaurant dont le chef s'appelle 'Dugros'
   

-------------------------------------------------------------------------------------------------------
Correction
-------------------------------------------------------------------------------------------------------

1.  Qu'est  ce  qu'un  SGBDR  Donnez  la  signification  des lettres ainsi  qu'une  définition détaillée ? (2 pts)

Système de Gestion de Base de Données Relationnel
Un  SGBD  représente  donc  l'ensemble  des  programmes  assurant  structuration,  stockage, maintenance,  mise à jour et  recherche des données d‘une base +  interfaces nécessaires aux différentes formes d‘utilisation de la base. Relationnel exprime les relations (clés primaires - clés étrangères) entre les tables

2.  Citez 6 exemples de SGBDR (3 commerciaux et 3 libres) (2 pts)

Les SGBD commerciaux :
 
·     Oracle  (Unix, Linux, W indows)
·     M icrosoft : SQL serveur et Access
·     IBM  : DB2, Informix
·     Sybase : Sql Anywhere (W indows, Unix, Linux …)
·     Interbase (W indows)
·     …

Les SGBDR libres 
:

  • My-SQL
  • Postgre Sql (Linux)
  • Firebird (Linux, W indows)
  • Adabas, SAP-DB,    Max DB (Linux, Windows)


3.  Donnez les différents types de données (3 pts)

Numériques  (octet, entier, entiers longs, réels …)
Texte
Date/heure
Monétaire, booléen, lien hypertexte, mémo …

4.  Qu'est ce que l'i égrité référenti le (donnez une réponse détailée) ? (2 pts)

La notion d‘intégrité référentielle est au cœur même de la base de données. Elle lui  confère  son  caractère  relationnel.Référentielle  signifie  que  la  clé  étrangère  doit  faire référence à une clé primaire.

Appliquer l'intégrité référentielle implique :

  • Dans le champ  clé étrangère vous ne pouvez pas entrer une valeur qui  n'existe pas dans la clé primaire (Un client ne peut être saisit dans une commande s'il n'existe pas).
  • Vous  ne  pouvez  pas  effacer  un  enregistrement  de  la  table  primaire  si  des enregistrements correspondants existent dans une table liée
  • Vous ne  pouvez pas modifier une  valeur clé  primaire  dans la table  primaire  si  cet enregistrement a des enregistrements liés
 
5.  Qu'est ce que l'intégrité de domaine (donnez un exemple) ? (2 pts) 
    
Les contraintes de domaines sont  des contraintes liées aux colonnes des tables (attribut  non nul,  ou  dans une fourchette de valeurs …)  Ex  :  mode de paiement  (Espèce,  chèque,  Carte bleue)

6.  Que représente le modèle relationnel ? (2 pts)

Le modèle relationnel représente la structure de la base de donnée, à savoir 
 
  • La structure des tables (nom, nom des champs)
  • Les liens entre elles.

7.  Qu'est ce qu'une clé étrangère ? (1 pt)
  • La clé étrangère matérialise la liaison de la table vers une autre table (clé primaire).

8.  Que signifient les lettres SQL ? (1 pt)
  • Structured Query Language (langage d'interrogation de base de donnée)

9.  En SQL, que signifient les lettres LID ? (1 pt)

Langage d'Interrogation des Données

Soit la base de donnée suivante : 
  
       
10. Soulignez les clés primaires, rajoutez un # derrière les clés étrangères. (4 pts)

11. Donnez la li e des restaurants de plus de 2 étoiles par ordre alphabétique. (2 pts)

SELECT Nomresto
   FROM  RESTO 
   WHERE NbEtoile > 2
   ORDER BY Nomresto ;

12. Nom et adresse des restaurants qui ne proposent pas le menu 10. (2 pts)

SELECT Nomresto, Adresse
   FROM  RESTO
   WHERE Idresto NOT IN
   (SELECT Idresto
   FROM  MENURESTO
   WHERE Idmenu=10) ;

13. Donnez la li e des restaurants qui ne vendent pas de boissons alcoolisées. (2 pts)

SELECT Nomresto, Adresse
   FROM  RESTO
   WHERE Idresto NOT IN
   (SELECT Idresto
   FROM  BOISSON B, BOISSONSERVIE BS
   WHERE B.Idboisson=BS.Idboisson
   AND DegreeAlcool > 0) ;

14. Nombre de menus par restaurant par ordre croissant du nombre de menu. (2 pts)

SELECT Nomresto, COUNT(Idmenu) as Nombre
   FROM  RESTO R, MENURESTO M 
   WHERE R.Idresto = M .Idresto
   GROUP BY Nomresto
   ORDER BY Nombre ;
   
15. Nom  du  restaurant,  nom  du  chef,  nombre d'étoiles,  prix  mini,  moyen  et  maxi  d‘un menu dans chaque restaurant. (2 pts)

SELECT Nomresto, Nomchef, NbEtoil  MIN(prix), AVG(PRIX), MAX(PRIX)
   FROM  RESTO R, MENURESTO M 
   WHERE R.Idresto=M .Idresto
   GROUP BY Nomresto, Nomchef, NBEtoil

16. Nom du restaurant qui propose le menu le plus cher. (2 pts)

SELECT Nomresto
   FROM  RESTO R, M ENURESTO M 
   WHERE R.Idresto = M .Idresto
   AND Prix =
   (SELECT MAX(Prix) FROM  MENURESTO);

17. Liste des boissons en 'demi-bouteille  proposées par le restaurant 1. (2 pts)

SELECT Nomboisson
   FROM  CONTENANT C, BOISSON B, BOISSONSERVIE BS
   WHERE C.Idcontenant=BS.Idcontenant
   AND BS.Idboisson=B.Idboisson
   AND Idresto=1
   AND Nomcontenant="demi-bouteille" ;

18. Nom des restaurants qui proposent ”foie gras poêlé‘ en entrée. (2 pts)

SELECT DISTINCT Nomresto
   FROM  RESTO R, MENURESTO M R, MENU M 
   WHERE R.Idresto = M R.Idresto
   AND M R.Idmenu=M .Idmenu
   AND Entree="foie gras poëlé";

19. Donnez la li e des restaurants (nom, adresse, téléphone) qui proposent un plat à base de ”canard‘. (2 pts)

SELECT Nomresto, Adresse, Telephone
   FROM  RESTO R, MENURESTO M R, MENU M 
   WHERE R.Idresto = M R.Idresto
   AND M R.Idmenu = M .Idmenu
   AND Plat LIKE "%canard%" ;
   
20. Donnez la liste des restaurants ayant le même nombre d'étoiles que le restaurant dont le chef s'appelle 'Dugros'(2 pts)

SELECT RR.Nomresto, RR.Adresse, RR.Telephone
   FROM  RESTO RM , RESTO RR   
   WHERE RM .IDresto = RR.Idresto
   AND RM .NbEtoile = RR.NbEtoile
   AND RM .Nomchef = "Dugros"
   AND RR.Nomchef <> "Dugros";


Autre solution :

SELECT Nomresto, Adresse, Telephone
FROM  RESTO 
   WHERE NbEtoile = 
   (SELECT NbEtoile FROM  RESTO WHERE Nomchef = "Dugros")
   AND Nomchef <> "Dugros";
       

2 commentaires:

  1. pourquoi cette condition " AND Nomchef <> "Dugros"; " ???

    RépondreSupprimer
    Réponses
    1. sans cette condition on va avoir comme résultat le restaurant qui est contrôlé par "Dugros"

      Supprimer