Professional Documents
Culture Documents
1.2 Modle relationnel (rappel cycle A) 1.3 Rtro-conception TP 2 : Algbre Relationnelle 2.1 Slection et Projection 2.2 Jointure relationnelle 2.3 Auto-Jointure et Renommage TP 3 : Algbre -SQL : Employs -Dpartements 3.1 Schma
3.1.1 Relation des Employs (EMP) 3.1.2 Relation des Dpartements (DEPT)
4.3 Mise jour 4.4 Contraintes TP 5 : SQL -Algbre : Cinmas -Films 5.1 Schma 5.2 Requtes
5.2.1 5.2.2 5.2.3 5.2.4 Interrogation dune seule relation Jointures Diffrence Division
Travaux Pratiques
Conception MERISE et BD
Said ECH-CHADI
TP 1
Conception
1.1 Interprtation de schmas entit/association
1.1.1 Centre mdical On vous donne un schmas E/A (gure 1.1) reprsentant des visites dans un centre mdical. Rpondez aux questions suivantes en fonction des caractristiques de ce schma (i.e. : indiquez si la situation dcrite est reprsentable, indpendamment de sa vraissemblance).
Exercice A : Un patient peut-il effectuer plusieurs visites ? Exercice B : Un mdecin peut-il recevoir plusieurs patients dans la mme consultation ? Exercice C : Peut-on prescrire plusieurs mdicaments dans une mme consultation ? Exercice D : Deux mdecins diffrents peuvent-ils prescrire le mme mdicament ?
Travaux Pratiques
Conception MERISE et BD
Said ECH-CHADI
1.1.2 Tournoi de tennis Le second schma (gure 1.2) reprsente des rencontres dans un tournoi de tennis.
Exercice A : Peut-on jouer des matchs de double ? Exercice B : Un joueur peut-il gagner un match sans y avoir particip ? Exercice C : Peut-il y avoir deux matchs sur le mme terrain la mme heure ? 1.1.3 Un journal Pour vous entraner : voici le schma E/A (gure 1.3 du systme dinformation (trs simpli) dun quotidien. Exercice A : Un article peut-il tre rdig par plusieurs journalistes ? Exercice B : Un article peut-il tre publi plusieurs fois dans le mme numro ? Exercice C : Peut-il y avoir plusieurs articles sur le mme sujet dans le mme numro ?
Travaux Pratiques
Conception MERISE et BD
Said ECH-CHADI
Exercice B : Donnez la commande Create Table pour les tables Consultation et M atch.
1.3 Rtro-conception
On trouve dans un SGBD relationnel les relations ci-dessous. Les cls primaires sont
Travaux Pratiques
Conception MERISE et BD
Said ECH-CHADI
soulignes, mais pas les cls trangres. IMMEUBLE (Adresse, Nb-tages, Date-construction, Nom-Grant) APPART (Adresse, Numro, Type, Supercie, Etage) PERSONNE (Nom, Age, Code-Profession) OCCUPANT (Adresse, Numro-Appart, Nom-Occupant, Date-arrive, Date-dpart) PROPRIT (Adresse, Nom-Propritaire, Quote-part) TYPE-APPART (Code, Libell) PROFESSION (Code, Libell)
Exercice A : Identier les cls trangres dans chaque relation. Exercice B : Reconstruire le schma E/A. Exercice C : Existe-t-il des contraintes dintgrit ? Lesquelles ? Exercice D : Certaines donnes du schma relationnel rsultent-elles doptimisation ?
Travaux Pratiques
Conception MERISE et BD
Said ECH-CHADI
TP 2
Algbre Relationelle
2.1 Slection et Projection
Soit la relation
Exercice A : Donnez les rsultats des requtes suivantes : Requte 1 : Age=30 (PERSONNE) (slection) Requte 2 : Age (PERSONNE) (projection) Requte 3 : Age (N om= Serge (PERSONNE)) (projection, slection)
Exercice B : Exprimez les requtes suivantes en algbre relationnelle : Requte 1 : les personnes (nom, ge, ville) qui habitent Paris. Requte 2 : les personnes (nom, ge, ville) qui ont moins de 30 ans. Requte 3 : les villes dans la relation PERSONNE. Requte 4 : les noms des personnes habitant Paris.
Travaux Pratiques
Conception MERISE et BD
Said ECH-CHADI
o les attributs A, B, C sont dnis sur les domaines des lettres de lalphabet. Donnez le rsultat des requtes suivantes :
Requte 1 : R
S (jointure naturelle).
A,B(R B,C(R
S) = R S) = S
(2.1) (2.2)
Travaux Pratiques
Conception MERISE et BD
Said ECH-CHADI
TP 3
Travaux Pratiques
Conception MERISE et BD
Said ECH-CHADI
10
Exercice A : Calculer sal<5000 (EMP). Exercice B : Calculer EMPbis = ENO/ENO (ENO,COMM (EMP)) Exercice C : Calculer ENO,SAL(EMP)
SAL=COMM (EMPbis)
Exercice D : Exprimer par une phrase ce quon obtient en valuant les requtes prcdentes. Exercice E : Quelle est lexpression de lalgbre relationnelle qui permettrait dobtenir le nom et la profession de lemploy de numro 10. Exercice F : Idem pour la liste des noms des employs qui travaillent New York. Exercice G : Idem pour avoir le nom du directeur du dpartement Commercial.
3.3 Requtes
Exprimer les requtes Q1 Q18 laide de lalgbre relationnelle. Exprimer en SQL les requtes Q1 Q24. 3.3.1 Interrogation dune seule Relation Requte 1 : Donner tous les n-uplets de DEPT. Requte 2 : Donner tous les n-uplets de EMP. Requte 3 : Donner les noms et les salaires des employs. Requte 4 : Donner les professions des employs (aprs limination des duplicats). Requte 5 : Donner les dates dembauche des techniciens. 3.3.2 Jointures Requte 6 : Faire le produit cartsien entre EMP et DEPT.
Travaux Pratiques Conception MERISE et BD Said ECH-CHADI
11
Requte 7 : Donner les noms des employs et les noms de leur dpartement. Requte 8 : Donner les numros des employs travaillant BOSTON. Requte 9 : Donner les noms des directeurs des dpartements 1 et 3. Attention : directeur nest pas une profession ! Requte 10 : Donner les noms des employs travaillant dans un dpartement avec au moins un ingnieur. Requte 11 : Donner le salaire et le nom des employs gagnant plus quun (au moins un) ingnieur. Requte 12 : Donner le salaire et le nom des employs gagnant plus que tous les ingnieurs. Requte 13 : Donner les noms des employs et les noms de leurs directeurs. Requte 14 : Trouver les noms des employs ayant le mme directeur que JIM. Attention : un employ peut tre directeur de plusieurs dpartements. Requte 15 : Donner le nom et la date dembauche des employs embauchs avant leur directeur ; donner galement le nom et la date dembauche de leur directeur. Requte 16 : Donner les dpartements qui nont pas demploys. Requte 17 : Donner les noms des employs du dpartement COMMERCIAL embauchs le mme jour quun employ du dpartement PRODUCTION. Requte 18 : Donner les noms des employs embauchs avant tous les employs du dpartement 1. Requte 19 : Donner les noms des employs ayant le mme emploi et le mme directeur que JOE.
3.3.3 Valeurs Nulles, Tris, Groupes, Agrgats et Expressions Requte 20 : Donner la liste des employs ayant une commission. Requte 21 : Donner les noms, emplois et salaires des employs par emploi croissant et, pour chaque emploi, par salaire dcroissant.
Travaux Pratiques
Conception MERISE et BD
Said ECH-CHADI
12
Requte 22 : Donner le salaire moyen des employs. Requte 23 : Donner le nombre demploys du dpartement PRODUCTION. Requte 24 : Les numros de dpartement et leur salaire maximum ? Requte 25 : Donner les noms des employs ayant le salaire maximum de chaque dpartement. Requte 27 : Le salaire moyen le plus bas (par profession) ? Requte 28 : Donner les emplois ayant le salaire moyen le plus bas ; donnez aussi leur salaire moyen.
Travaux Pratiques
Conception MERISE et BD
Said ECH-CHADI
13
TP 4
Travaux Pratiques
Conception MERISE et BD
Said ECH-CHADI
14
ADR : adresse de la rsidence dune personne, il sagit dun immeuble NAPR : numro dappartement 4. Relation COLE NOMEC : nom dune cole, cl ADEC : adresse dune cole NBCLASSES : nombre de classes DIR : nom du directeur
5. Relation CLASSE NOMEC : nom dune cole NCL : nom de la classe, e.g., CP1, CE2, CE3, etc... MAITRE : nom de linstituteur NBEL : nombre dlves dans la classe 6. Relation ENFANT NOMP : nom de la personne responsable de lenfant, cl e.g., pre, mre etc... PRENOM : prnom de lenfant AN : anne de naissance NOMEC : nom dune cole NCL : nom de la classe La relation IMMEUBLE dcrit un ensemble dimmeubles. Chaque immeuble a un propritaire. La relation APPIM dcrit pour chaque immeuble lensemble des appartements qui le compose. Chaque appartement peut hberger plusieurs personnes mais il y en a une qui est responsable (par exemple le locataire) et qui est dsigne par le constituant OCCUP. Si lappartement est inoccup, ce constituant prend la valeur NULL. La relation PERSONNE dcrit un ensemble de personnes. ADR et NAPR reprsentent ladresse o rside une personne. Une personne peut avoir plusieurs enfants dcrits par la relation ENFANT. Pour simplier, on ne considre que les enfants allant lcole primaire. Les coles et les classes sont dcrites dans les relations COLE et CLASSE. On suppose ici que toutes ces relations vrifient les contraintes dintgrit de base. Par exemple, une personne rpertorie dans la relation CLASSE en tant que matre exerce bien la profession dinstituteur dans la relation PERSONNE. De mme, un directeur dcole est un instituteur.
4.2 Requtes
Exprimer les requtes suivantes laide de lalgbre relationnelle, puis les traduire en SQL. Requte 1 : Donner ladresse des immeubles ayant plus de 10 tages et construits avant 1970.
Travaux Pratiques
Conception MERISE et BD
Said ECH-CHADI
15
Requte 2 : Donner les noms des personnes qui habitent dans un immeuble dont ils sont propritaires (occupants et habitants). Requte 3 : Donner les noms des personnes qui ne sont pas propritaires. Requte 4 : Donner les adresses des immeubles possds par des informaticiens dont lge est infrieur 40 ans. Requte 5 : Donner la liste des occupants (nom, ge, profession) des immeubles possds par DUPONT. Requte 6 : Donner le nom et la profession des propritaires dimmeubles o il y a des appartements vides. Requte 7 : Donner les noms des matres qui habitent dans le mme immeuble ( la mme adresse) quau moins un de leurs lves (on suppose que les enfants vivent sous le mme toit que leur responsable). Requte 8 : Donner ladresse de limmeuble, la date de construction, le type dappartement et ltage o habitent chacun des matres des enfants de DUPONT. Requte 9 : Donner le nom et lge des matres qui habitent dans un immeuble dont le propritaire est responsable dun de leurs lves. Requte 10 : Donner le nom et lge des personnes qui sont propritaires mais qui ne sont ni matre ni directeur dcole (des classes et coles rpertories dans ECOLE et CLASSE).
4.4 Contraintes
Indiquer de la faon la plus formelle possible certaines contraintes que les donnes de la base doivent respecter pour tre conformes la ralit modlise ici.
Travaux Pratiques
Conception MERISE et BD
Said ECH-CHADI
16
TP 5
Un film est ralis par un metteur en scne mais peut tre financ par plusieurs Producteurs. Un Spectateur peut aimer un film sans lavoir vu.
5.2 Requtes
crire les requtes suivantes en algbre relationnelle. 5.2.1 Interrogation dune seule relation Requte 1 : Dans quelle salle et quelle heure peut on voir le film Mad Max ? Requte 2 : Quels sont les films raliss par Orson Welles ? Requte 3 : Quels sont les Acteurs du film Ran ?
5.2.2 Jointures Requte 4 : Dans quelles salles peut-on voir un film avec Simone Signoret ?
Travaux Pratiques Conception MERISE et BD Said ECH-CHADI
17
Requte 5 : Dans quelles salles peut on voir Marlon Brando aprs 16h ? Requte 6 : Quels sont les Acteurs qui ont produit un film ? Requte 7 : Quels sont les Acteurs qui ont produit un film dans lequel ils jouent ? Requte 8 : Quels sont les Acteurs qui ont produit et ralis un mme film ? Requte 9 : Quels sont les Producteurs qui regardent les films quils ont produits ?
5.2.3 Diffrence Requte 10 : Quels films ne passent en ce moment dans aucune salle ? Requte 11 : Quels Spectateurs aiment un film quils nont pas vu ? Requte 12 : Qui naime aucun film quil a vu ? Requte 13 : Qui na produit aucun film de Doillon ? Requte 14 : Qui a produit un film qui ne passe dans aucune salle ?
5.2.4 Division Requte 15 : Quels Spectateurs ont vu tous les films ? (ou Spectateurs pour lesquels il nexiste pas un film quils nont pas vu) Requte 16 : Quels Acteurs jouent dans tous les films de Welles ? (ou Acteurs pour lesquels il nexiste pas un film de Welles quils nont pas jou) Requte 17 : Quels sont les Spectateurs qui aiment tous les films quils ont vu ? (ou Spectateurs pour lesquels il nexiste pas un film quils ont vu et quils nont pas aim) Requte 18 : Quels sont les Producteurs qui voient tous les films quils ont produit ? (ou Producteurs pour lesquels il nexiste pas un film quils ont produit et quils nont pas vu) Requte 19 : Quels Producteurs voient tous les films de Kurosawa ? (ou Producteurs pour lesquels il nexiste pas un film de Kurosawa quils nont pas vu)
Travaux Pratiques
Conception MERISE et BD
Said ECH-CHADI
18