R EPUBLIQUE TUNISIENNE Section : Sciences de l’Informatique
M INISTERE DE L ' EDUCATION
LYCEE M OUROUJ 6 EPREUVE THEORIQUE DE
*** B ASE DE DONNEES
CORRECTION SUJET DE REVISION Date : Avril 2008
N°07
Durée : 2 h – Coefficient:1.5
BAC SESSION 2008 Prof. Jamel TALBI
Le sujet comporte trois pages numérotés de 1/3 à 3/3
Partie I (6pts)
Exercice n°1 (3pts)
En considérant les possibilités offertes par le schéma présenté, répondre aux questions
suivantes en justifiant votre réponse par rapport à la sémantique intuitive des relations:
EMPLOYER (CIN, NOM, PRENOM, VILLE, COD_SP#)
SPECIALITE (COD_SP, DES_SP)
EXPERTISE (CIN#, COD_SERV#, DATE_AFFECTATION)
SERVICE (COD_SERV, DES_SERV, QUALITE)
* Les réponses aux quest ions 3, 4 et 5 doivent être sous forme de représentation textuelle et non
par une rédaction.
1. Un employé peut-il avoir plusieurs villes ?
Non car chaque employé est caractérisé par un attribut ville qui peut prendre
une seule valeur.
2. Un employé peut-il être expert de plusieurs services ?
Oui car dans la table service, la clé primaire est composée à la fois de CIN de
client et code service: donc le même employé peut apparaitre comme expert
de plusieurs services.
3. Quelles sont les modifications à faire pour éviter la redondance de la propriété
VILLE. *
Ville (code_ville, nom_ville)
EMPLOYER (CIN, NOM, PRENOM, code_ville#, COD_SP#)
4. Quelles sont les modifications à faire si l’employé peut être affecté au même
service plusieurs fois. *
EXPERTISE (CIN#, COD_SERV#, DATE_AFFECTATION)
5. Quelles sont les modifications à faire pour que l’employer soit qualifié de
plusieurs spécialités. *
EMPLOYER (CIN, NOM, PRENOM, code_ville#)
QUALIFICATION (COD_SP#, CIN#)
Page 1 sur 4
6. Traduire la représentation textuelle de la base de données en représentation
graphique, en ajoutant les modifications faites dans les questions 3, 4 et 5.
Exercice n°2 (3pts)
Pour chacune de ces propositions, mettre la lettre (V) si la proposition
est juste ou la lettre (F) si elle est fausse:
V/F Propositions
F L’ensemble d’objets hétérogène constitue ce qui est couramment appelé entité
F Une association est une relation entre une ou plusieurs valeurs de domaine
V Une entité peut avoir des valeurs qui proviennent de plusieurs domaines
F Lorsqu’une donnée n’est pas persistante, elle n’est pas volatile
Un fichier est un ensemble de données structurées mémorisées sur un support
F
permanent
V Le format de mémorisation est la forme selon laquelle une donnée est mémorisée
F Le type de support de mémorisation ne doit pas dépasser la durée de mémorisation
F Un enregistrement constitue l’unité physique de transfert entre la RAM et le disque dur
V Le langage PASCAL sert à manipuler seulement les fichiers et ne peut pas gérer une BD
V SGBD est l’acronyme de « Système de gestion de base de données »
F La définition des données concerne les outils de manipulation du contenu d’une BD
V La confidentialité des données est assurée par les mots de passe et les privilèges d’accès
F Une table est un ensemble de données relative à plusieurs sujets structurés en tableau
F Une colonne correspond à plusieurs propriétés de l’objet décrit par une table
Page 2 sur 4
F Une ligne correspond à plusieurs occurrences du sujet représenté par la table
V Chaque table doit avoir au moins une propriété qui représente son clé primaire
V Le synonyme de clé étrangère est « contrainte d’intégrité référentielle »
F Une contrainte d’intégrité est une règle qui doit être vérifié au moins une fois
V L’utilisation des fichiers permet de garantir la persistance des données
F Un SGBD est composé d’un moteur, interface et une base de données
Partie II (14pts)
Exercice n°1 (7pts)
Candidat (codeC, nom, prenom, date_naiss, adresse, tel)
Epreuve (codeE, date_pass, coef, codeM#)
Matiere(codeM, intitule)
Note(codeE#, codeC#, noteE)
Exercice n°2 (7pts)
Soit la base de données suivante :
CHAMBRE (Num_Chambre, Prix, Nbr_Lit, Nbr_Pers, Confort, Equ)
CLIENT (Num_Client, Nom, Personne, Adresse)
RESERVATION (Num_Client#, Num_Chambre#, Date_Arr, Date_dep)
Sachant que: Equ=1 si la chambre est équipé d'une télévision et 0 sinon.
Confort=1 si la chambre est équipé d'un bain et 0 sinon.
Exprimer les requêtes suivantes en SQL :
1. Les numéros de chambres sans TV.
Select Num_chambre
From chambre
Where Equi=0;
2. Les numéros des chambres et leurs Capacités.
Select Num_chambre, Nbr_Lit
From chambre;
3. La capacité théorique d’hôtel.
Select SUM(Nbr_Lit)
From chambre;
Page 3 sur 4
4. Le prix par personne des chambres sans TV.
Select Prix/Nbr_Pers 'prix par personne'
From chambre
Where Equ=0;
5. Les numéros des chambres et le numéro des clients ayant réservé des chambres le
23/04/2001.
Select Num_Chambre, Num_Client
From reservation
Where Date_Arr='2001-04-23';
6. Les numéros des chambres coûtant au maximum 80 dinars ou ayant un bain et
valant au maximum 120 Dinars.
Select Num_Chambre
From chambre
Where (prix<=80) OR ( (Confort=1) AND (prix<=120) );
7. Les clients dont les noms commencent par « AL ».
Select *
From client
Where Nom like 'AL%';
8. Le nombre des chambres dont le prix est entre 85 et 120 Dinars.
Select count(*)
From chambre
Where prix between 85 AND 120;
9. Les clients qui n’ont pas fixé la date de départ.
Select Num_client
From reservation
Where Date_dep=Null;
Page 4 sur 4