Livre_silo 30 août 2013 16:32 Page 260
¨
©
¨
©
¨
©
¨
©
C o p y r i g h t E y r o l l e s
260
Informatique pour tous
Exercice 10.2 Proposer des schémas relationnels représentant respectivement :
• l’inventaire d’un supermarché ;
• le parc informatique d’une entreprise.
Dans chaque cas, donner un exemple significatif de relation associée au schéma proposé.
10.3 Opérateurs sur le modèle relationnel
10.3.1 Description des recherches
Une fois les données représentées sous forme relationnelle, il faut pouvoir les exploiter
pour y rechercher des informations précises. Pour cela, on doit tout d’abord être capable
d’exprimer ces recherches sous une forme précise. On va donner ici un aperçu de ce qui
sera formellement défini plus loin : le langage de requêtes SQL.
On considère une relation eleve et l’expression suivante :
SELECT nom FROM eleve WHERE prenom = 'Serge' OR prenom = 'Muriel';
Elle correspond à une description précise de la recherche : obtenir les noms de famille de tous
les élèves se prénommant Serge ou Muriel.
Au lieu d’essayer de construire tout de suite un algorithme permettant de répondre à cette
recherche, on va essayer de découper celle-ci en opérations élémentaires réutilisables.
Pour répondre à cette recherche, on doit être capable de :
• sélectionner dans la relation eleve les valeurs dont l’attribut prénom correspond à “Serge”
ou à “Muriel” ;
• regrouper ces deux ensembles de valeurs ;
• extraire de chacune des valeurs, l’attribut nom.
On pourrait donc décomposer cette recherche à l’aide de trois opérations génériques agissant sur des relations :
• une sélection permettant d’extraire une sous-relation dont les valeurs vérifient un critère
donné ;
• une union pour regrouper les valeurs de deux relations, sous réserve que les deux relations
aient le même schéma ;
• une projection pour ne conserver d’une relation que la valeur de certains attributs.
On appelle de telles opérations des opérateurs relationnels. On va présenter dans cette partie
les opérateurs les plus simples ; d’autres opérateurs essentiels, mais plus complexes, feront
l’objet du chapitre suivant.
Il est possible de traduire automatiquement des recherches exprimées dans un langage
comme SQL à l’aide d’une succession d’opérateurs relationnels. En général, cette traduction n’ est pas unique et il existe de nombreuses possibilités. Certaines de ces traductions
Précédent

- 273/402

Suivant