Vous êtes sur la page 1sur 8

Interrogation des bases de données

Soit la base de données relationnelle, PUF, de schéma :


U (NU, NomU, Ville)
P (NP, NomP, Couleur, Poids)
F (NF, NomF, Statut, Ville)
PUF (NP, NU, NF, Quantité)
décrivant le fait que :
U: une usine est décrite par son numéro NU, son nom NomU, la ville Ville dans laquelle
elle est située;

P: un produit est décrit par son numéro NP, son nom NomP, sa Couleur, son Poids;

F: un fournisseur est décrit par son numéro NF, son nom NomF, son Statut (fournisseur
sous-traitant, fournisseur-client, .....), la Ville où il est domicilié;

PUF: le produit de numéro NP a été livré à l’usine de numéro NU par le fournisseur de


numéro NF dans une Quantité donnée.
Exprimer en algèbre relationnelle, en calcul tuples, en calcul domaines, et en SQL les
requêtes suivantes:

(1) Donner le numéro, le nom et la ville de toutes les usines.

(2) Donner le numéro, le nom et la ville de toutes les usines de Londres.

(3) Donner les numéros des fournisseurs qui approvisionnent l’usine n?1 en produit n?1.

(4) Donner le nom et la couleur des produits livrés par le fournisseur n?1.

(5) Donner les numéros des fournisseurs qui approvisionnent l’usine n?1 en un produit rouge.

(6) Donner les noms des fournisseurs qui approvisionnent une usine de Londres ou de Paris
en un produit rouge.

(7) Donner les numéros des produits livrés à une usine par un fournisseur de la même ville.

(8) Donner les numéros des produits livrés à une usine de Londres par un fournisseur de
Londres.

(9) Donner les numéros des usines qui ont au moins un fournisseur qui n’est pas de la même
ville.

(10) Donner les numéros des fournisseurs qui approvisionnent à la fois les usines n?1 et n?2.

(11) Donner les numéros des usines qui utilisent au moins un produit disponible chez le four-
nisseur n?3 (c’est-à-dire un produit qu’il livre mais pas nécessairement à cette usine).

(12) Donner le numéro du produit le plus léger (les numéros si plusieurs produits ont ce même
poids).

1
(13) Donner les numéros des usines qui ne reçoivent aucun produit rouge d’un fournisseur
londonien.

(14) Donner les numéros des fournisseurs qui fournissent au moins un produit fourni par au
moins un fournisseur qui fournit au moins un produit rouge.

(15) Donner tous les triplets (VilleF, NP, VilleU) tels qu’un fournisseur de la première ville
approvisionne une usine de la deuxième ville avec un produit NP.

(16) Même question qu’en 15, mais sans les triplets où les deux villes sont identiques.

(17) Donner les numéros des produits qui sont livrés à toutes les usines de Londres.

(18) Donner les numéros des fournisseurs qui approvisionnent toutes les usines avec un même
produit.

(19) Donner les numéros des usines qui achètent au fournisseur n?4 tous les produits qu’il
fournit.

(20) Donner les numéros des usines qui s’approvisionnent uniquement chez le fournisseur n?3.

2
  
      
 "!$# &%(')!$# *"+-, -./102436570
986;:"*<+-, -.9=">@?%(ACBCDE.1FE>(102
1GH JIK1:LJ!<=KM9NJO6=KMP9QR0TSUWVL3X5
 JIK1:LJ!<=KMPY:LJO6=KM9QR0TS ZU
Y[\ J%(']OJ# ^6%(_C,-.Y_CDU1Qa`bJO6=<JO :L&Ic=KM9QR0TS Z
9d6 JIK1:LJ!<=KMP1QR0TS e`bJO6=<JOT: ^H%(_U,-.1_UDf= >hg %(_Ci(. > 1QjU
1kH J%(']I$1S`lQR0TSm`4: ^H%(_U,-.1_UDf="> g %(_Ci(.Y>n9Qje`4 J!Y:"*<+-, -.9=">o?%(ACBCDp.YFE>hq*<+-, -.9=">rOcsnDE+-Fp>t90TUZ
9u6 JOv9QR0TSm`lS`l02
 JOvU9QR0wS`b&Ic=<JITS x`b"!"=<"!JNy*"+-, -.t=J*"+-, -.$02
1zH JOv9QR0TSm`4:"*<+-, -.9=">o?%(ACBCDp.YFE>(1S x`{0T
1|H "!}1:"*<+-, -.U=J~ *"+-, -.1IL9QR0TS`l0`{€v*<+-, -.( *<+-, -.YIL9S ZU4365
 "!}Y JIH# J!}1QR0TS ‚ƒ &I\# J!10`{SU
y„H JIK1:LJ!<=KMP1QR0TS Zx…; JIKY:L"!<=<†b1QR0TS Z
6 "!}Y JOv1:L&Ic=<‡b9QR0TS Zx`bJO6=<JOˆQR0TS
86 JOv9Qj}‚‰ JOv1:<O%(+-BCF1Š\O6†b9Q‹ €)O%(+-BCF1 O6†fLO%(+-BCF/1QjUUZ
yGH "!}902}‚‰ J!Y:"*<+-, -.9=">@?%(ACBCDE.YFp>n9S x`lQR0TSm`l: ^6%(_C,-.Y_CDŒ="> g %(_Ci(.Y>1QZ
[\ JIKY &O]f JIŽ1: ^6%(_C,-.Y_CDŒ="> g %(_Ci(.Y>1Qjx`{QR0TS}`4QR0TS}`lQR0TS 
d6‘dˆ’“<*<+-, -.YIH# JOJ# *"+-, -.1!x9€v*<+-, -.( *<+-, -.YI 1S )`lQR0TSm`{€v*<+-, -.( *"+-, -.9!x102Z
ykH;:"*<+-, -.1!]=J~ *"+-, -.1IL9ˆd6
u6 JOJ# J!e9QR0TS Z”b "!}1:"*"+-, -.9=">o?%(AUBCDp.YFp>n90TU
yzH JIKY &IH# "!$# &OŽ9QR0TS ZU”b J!102
y|H JOJ# J!e1:LJIc="•c1Qj0wS UZ”b JOv1:L&Ic="•c9QR0TS Z
98X„H "!}9QR0TS }‚‰ J!Y:LJI"=<~ ‡1Qj0wS U


–}—J˜<™pšE›œcUš 36ž"Ÿ ˜ 3X5<  ™Œœ  U¡P¢\5]¡£  ¡¤8&¥
¦ ªX€)œcO™ %(¡+-BC5"F1 U O6Ÿ{†­<fL¡ Ob˜ %(+-3 BUšF/­<1§¨Ÿ{­"Z©¡ ’™pœ 5< U¡ ž<™p¡œcC Uš 36¡ ž;™ŒœcUQ š 36ž œª ¡ › 5<žŸZ¡5 ™«œcZ   šp¬ 5  Qj8JV › 3Xž  ¡ž œ ž  3X5  ¡PŸ ™ ¡Ÿ
¦ §®œcU ‹  šp¬ €]5 O %(Ÿ2+-BC­"F9 OX¡ †™pYœ LO U%(¡ +-™pBCœcFCC9§š 36Už ©Q³’1´T5"ž<Qx¡7V]´w Z¡ 36™pœc°¤CšQe36V]ž µ4œ36ª 5 ¡ ™ ›¯¡P5<›  3XVx°¤Qx°3 š ¡ ­<ŸCœcWU¶   ™Œœ·šE¬ ªc5 œX Ÿ™ ¡5<™9±²  œbU­< ¡  šp¬ › ¡5 U  ¡¸Qj U8a¡ ™p¡ œc¤Cš ™ 36¡ž Ÿ
œœ ŸU5 ŸZ3 ››Pœ š  Z¡   ¡ˆ»›/¹L­<œ 5¯¢\5<ž<¡ 36°  5 ¬ ˜< Z™ ¡ ¡º­<­<¡ ¡« Q 5 ˜<œ™ª ¡¡ Ÿ{›w­<›/¡‘¹<œ Qj¢\ 5<¡ ˜ 3 š ­<Ÿ ­<¡«Q“ ™ ¡{ž<36° ¬  U¡º­<¡  5 ˜"™ ¡ŸR¡PŸ  ­<36ž ›;¡» ¼ œX™
¦ :<­<Ob36%(ž +-BUF9Š\™pœ¿O6†yªc9§½œX™ ¡P‹·5< ·€]Ob­"%(¡ +-BUF9Qe O63 †bš f­<LŸ·O%(¡P+-BCŸ F/ 1§¨ŸZ5 Z˜Uj¡P»   ’¾š ¡P5<36 Už·¡Áž"œƒÀ¡T¼™ŒœÂœ  Zªc­<œX¡«™ ¡­<5<5  ˜ ­< Z¡ 3J­<Qj5 8JšE¶ ›™ œ¡Ÿ  J¡ªc» Ÿ œXš ™ ¡P¡Pž·5< U¢\Ÿ¤5<¡­<¡ ™ ¡Ÿ´T QÃ5 ˜<¢\™ ¡5 Ÿ š
ŸU5  U¬3&­<Ÿ š 5 Ÿ  ¡ž  ŸU36ž «™ ¡PŸ{ž\5<° ¡P»  U36Ÿº­<¡PŸ ˜  U3&­<5 šÄ Ÿ{¢\5 š ŸU3Xž w˜<™ 5<Ÿ ™ 365" U­<Ÿ{¢\5 ±oœ 5¯°¤3 š ž<Ÿl5<ž œ 5   U¡
˜ šÄ

8
Calcul Relationnel Tuples (TRC)
(1) u  NU  u  NomU  u  Ville  U  u 

(2) u  NU  u  NomU  u  Ville  U  u   u  Ville


‘Londres’ 

(3) l  NF  PUF  l   l  NU
1  l  NP
1 

(4) p  NomP  p  Couleur  P  p   l  PUF  l   p  NP


l  NP  l  NF
1 

(5) l  NF  PUF  l   p  P  p   l  NP
p  NP  l  NU
1  p  Couleur
‘Rouge’ 

(6) f  NomF  F  f   l p u  PUF  l   P  p   U  u   f  NF


l  NF  l  NP
p  NP 
l  NU
u  NU  p  Couleur
‘Rouge’ 
u  Ville
‘Londres’  u  Ville
‘Paris’  

(7) l  NP  PUF  l   f u  F  f   U  u   l  NF
f  NF  l  NU
u  NU 
f  Ville
u  Ville 

(8) l  NP  PUF  l   f u  F  f   U  u   l  NF
f  NF  l  NU
u  NU 
f  Ville
‘Londres’  f  Ville
u  Ville 

(9) l  NU  PUF  l   u f  U  u   F  f   l  NU
u  NU  l  NF
f  NF 
u  Ville 
f  Ville 

(10) l1  NF  PUF  l1   l2  PUF  l2


  l1  NF
l2  NF  l1  NU
1  l2  NU
2 

(11) u  NU  U  u   l1 l2  PUF  l1   PUF  l2   u  NU


l1  NU  l1  NP
l2  NP 
l2  NF
3 
(12) p1  NP  P  p1  p2  P  p2   p2  Poids  p1  Poids 
p1  NP  P  p1   p2  P  p2  p2  Poids  p1  Poids 

(13) u  NU  U  u   l  p  f  PUF  l   P  p   F  f   u  NU


l  NU  l  NP
p  NP 
l  NF
f  NF  p  Couleur 
‘Rouge’  f  Ville 
‘Londres’ 

(14) l  NF  PUF  l   l1 l2 p  PUF  l1   PUF  l2   P  p 


l  NP
l1  NP  l1  NF
l2  NF  l2  NP
p  NP  p  Couleur
‘Rouge’ 

(15) f  Ville  l  NP  u  Ville  F  f   PUF  l   U  u   f  NF


l  NF  l  NU
u  NU 

(16) f  Ville  l  NP  u  Ville  F  f   PUF  l   U  u   f  NF


l  NF  l  NU
u  NU 
f  Ville 
u  Ville 

(17) p  NP  P  p   u  U  u   u  Ville


‘Londres’ 
l  PUF  l   p  NP
l  NP  l  NU
u  NU 

(18) l  NF  PUF  l   u  U  u  l1  PUF  l1   l1  NF


l  NF 
l1  NP
l  NP  l1  NU
u  NU 
ou bien

1
l  NF  PUF  l   p  P  p   u  U  u  l1  PUF  l1   l1  NF
l  NF 
l1  NP
p  NP  l1  NU
u  NU 

(19) u  NU  U  u   l1  PUF  l1   l1  NF


4  l2  PUF  l2   u  NU
l2  NU
l1  NP
l2  NP  l2  NF
4 

(20) u  NU  U  u  l  PUF  l   u  NU


l  NU  l  NF 
3 
ou bien
u  NU  U  u   l  PUF  l   u  NU
l  NU  l  NF
3 

2
Exercice n°1 :

1. L'ensemble minimum de dépendances fonctionnelles de R1 est le suivant :

DF = { AB → D, B → C, D → E, D → F

2. La clé de cette relation est (A,B). Cette relation est en première forme normale mais pas en
deuxième forme normale car il y a un attribut qui ne fait pas partie de la clé (l’attribut C)
qui dépend d'une partie de la clé (l’attribut B).
3. La relation R11 (A, B, D, E, F) est en deuxième forme normale et pas en troisième normale
car il subsiste une dépendance transitive. La relation R12(B,C) est en BCNF.
4. On peut décomposer R11 en R112 (D, E, F) et R112(A,B,D) sans perte d'information.

Exercice n°2 :
1. Couverture minimale des dépendances fonctionnelles de R :
 Avec A → C et A, C →E, on constate que A, C → E n'est pas élémentaire et que l'on
peut la remplacer par A →E sans perte de dépendance.
 Avec A →E et A, D, E → B, G, on constate que A, D, E → B, G n'est pas élémentaire
et que l'on peut la remplacer par A, D → B, G sans perte de dépendance.
 Avec A → B et A, D → B, on constate que A, D → B est redondante et que l'on peut la
supprimer.
Avec A → B, C → B et A →C, on constate que A → B peut être déduite et que l'on
peut donc la supprimer.
L'ensemble minimum des dépendances fonctionnelles de R est donc le suivant :
 A → C, E
 A, D → G
 C, G → D
 B, G → C
 C→B
2. Voici une décomposition sans perte de dépendance ni d'information :
 R1 (A, E, C) en BCFN
 R2 (A, D, G) en BCFN
 R3 (C, G, D) en BCFN
 R4 (B, G, C) en 3FN
3. Les clés de chaque relation :
 Pour R1 – la Clé est A
 Pour R2 – la Clé est le couple(A,D)
 Pour R3 – la Clé est le couple (C, G)
 Pour R4 – la Clé est le couple (B, G)

Vous aimerez peut-être aussi