:: Enseignements :: Licence :: L3 :: 2008-2009 :: Bases de données ::
![[LOGO]](http://igm.univ-mlv.fr/ens/resources/mlv.png) | Langages relationnels |
Exercice 1 - Algèbre relationnelle
Etant données les relations suivantes (exprimées en extension) r, s, t et w :
r |
|
|
A |
B |
C |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
0 |
5 |
w |
|
|
A |
B |
C |
7 |
8 |
9 |
1 |
2 |
3 |
7 |
8 |
1 |
- Indiquez le schéma de chaque relation (exprimé en intension).
-
Parmi les opérations suivantes, lesquelles sont licites ? Quelles sont les relations résultats?
- r union t
- s intersect t
- t - w
- r join s
- r x t
- r join t with B=D
- r join T with B < D
- r union w
- r intersect w
- r - w
- r union r
- r - r
- s intersect s
Exercice 2 - Véhicules et réparations
Les relations :
- véhicule (nv, m, coul)
- réparation (nr, lib)
- véh-rév (nv, nr, d)
représentent respectivement :
- des véhicules, de numéro d'immatriculation nv, de marque m et de couleur coul.
- des réparations, de numéro nr et de libellé lib.
- des véhicules, de numéro nv, qui ont eu la réparation nr, à la date d.
Exprimez en langage algébrique et en SQL les requêtes suivantes :
- la marque et la couleur de tous les véhicules.
- N° d'immatriculation des voitures de couleur 'rouge'.
- Marques des voitures qui ont eu une réparation.
- Marques des voitures qui ont eu une réparation avant le 1er janvier 1994.
- Type de réparation fait à la voiture n° 102.
- Types de réparations faits aux voitures de marque Citroën.
Un exemple de tables relatives à ces relations est le suivant :
véhicule |
nv |
m |
coul |
100 |
Renault |
rouge |
101 |
Peugeot |
bleu |
102 |
Citroën |
rouge |
réparation |
nr |
lib |
1 |
freins |
2 |
carburateur |
véh-rép |
|
|
nv |
nr |
d |
100 |
2 |
03-JAN-94 |
102 |
1 |
30-DEC-93 |
Exercice 3 - Rois et châteaux
Le schéma relationnel suivant représente le fait que des rois ont résidé dans des châteaux :
- ROIS (n°r, nom_roi, date_naissance)
- CHATEAUX (n°c, nom_c, siècle)
- RESIDER (n°r, n°c, année_début, année_fin)
Écrivez en algèbre relationnelle et en SQL les requêtes suivantes :
- Quelle est la date de naissance du roi Louis XVI ?
- A quel siècle le château de Chambord a-t-il été construit ?
- Quels sont les n° de rois qui ont résidé dans le château n° 5 ?
- Quels sont les n° de rois qui ont résidé dans le château de Chambord ?
- Quels sont les noms des rois qui ont résidé dans le château de Chambord ?
- Liste des rois (n°, nom et date de naissance) classés par date de naissance croissante.
- Pour chacun des rois (n° du roi), nombre de châteaux dans lesquels il a résidé.
- Pour chacun des rois (nom du roi), nombre de châteaux dans lesquels il a résidé.
- Quels sont les rois qui n'ont jamais habité au château de Blois ?
Exercice 4 - Contrats et sociétés
Les deux schémas relationnels
- société (n°s, nom, activité, nb_employés)
- contrat (n°contrat, montant, n°s)
représentent respectivement :
- des sociétés, avec le numéro, le nom, le domaine d'activité, le nombre d'employés
- et des contrats d'assurance, avec le numéro, le montant et le n° de la société l'ayant souscrit.
Écrivez en algèbre relationnelle et en SQL les requêtes suivantes :
- Noms des sociétés du domaine du bâtiment ou de la distribution, de plus de 1000 employés.
- Quels sont les montants des contrats souscrits par la société "O.K." ?
Exercice 5 - Personnes - Congrès
Ce schéma relationnel représente des personnes appartenant à certains organismes et participant à des congrès.
On connaît le n° de congrès, la date de début et la date de fin, le titre et la ville où il s'est tenu :
- personne (n°p, nomp, prénomp, nom_organisme)
- participer (n°p, n°c)
- congrès (n°c, date_d, date_f, titrec, ville)
Écrivez en algèbre relationnelle et en SQL les requêtes suivantes :
- Donnez le nom et le prénom des personnes de l'Université de Marne la Vallée, ayant participé au congrès "Les bases de données avancées".
- Donnez le titre des congrès qui se sont tenus à Paris et qui se sont finis avant le 1er février 1995 ou après le 30 avril 1995.
Exercice 6 - Gares - Villes - Pays
Ces trois relations d'une base de données touristique, représentent des gares, situées dans des villes, elles-mêmes situées dans des pays :
- Gares (nom_gare, n°ville)
- Villes (n°ville, nom_ville, nb_habitants, n°pays)
- Pays (n°pays, nom_pays)
Ecrivez en algèbre relationnelle et en SQL les requêtes suivantes :
- Pour les villes avec plus de 1.000.000 d'habitants, indiquer les noms des gares.
- Donnez le nom du pays et de la ville où se trouve la "Stazione Termini".
Exercice 7 - Circuits touristiques
Les trois relations représentent des circuits touristiques se déroulant dans des localités.
- Circuits (n°c, libellé, durée, prix)
- Localités (n°l, nom, nb_habitants)
- Comprend (n°c, n°l)
Ecrivez en SQL la requête suivante :
- Libellé des circuits de moins de 4 jours, incluant les localités de Cannes ou Chamonix
- Combien de circuits comprennent la visite de Versailles ?
Exercice 8 - Enseigner (Elèves - Matières – Suivre)
Les schémas relationnels suivants représentent respectivement des élèves, des matières et le fait que des élèves suivent des matières :
- élève (n°el, nom_el, prénom_el)
- matière (n°mat, nom_mat)
- suivre (n°el, n°mat)
Ecrivez en algèbre relationnelle et en SQL les requêtes suivantes :
- N° de la matière suivie par un étudiant qui s'appelle Jean Dupont.
- Nom et prénom des élèves qui suivent le cours de Bases de Données.
- Pour chaque matière (le n° de matière suffit), nombre d'élèves qui la suivent.
© Université de Marne-la-Vallée