Vous êtes sur la page 1sur 3

Nom et prénoms :

.....................................................................
.....................................................................
Université des Sciences et de la Technologie d’Oran
Faculté des Mathématiques et Informatique Option/ Groupe : …………………………………
Département Informatique
Master1
2023/2024 Note : ………………………………

Corrigé du Test en BASES DE DONNEES AVANCEES Durée : 1h

Exercice1 (13 pts)


L'administrateur du portail web d’une entreprise spécialisés en vente par internet (e-commerce)
dispose d’une table Utilisateur dont le schéma est le suivant :
Utilisateur (ID, Nom, Prénom, email, MP, DE, DDA, Ville, Pays, CP, Tél, Age)
Tel que : MP: mot_de_passe, DE: Date_Enregistrement, DDA: Date_Dernier_Accès, CP: Code_Postal

Soient les requêtes les plus fréquentes suivantes :


R1 : Select Nom, Prénom, Ville, Pays From Utilisateur where Age<18
R2 : Select Nom, Prénom, email, DDA From Utilisateur where DE >= ‘01-01-2022’ and Age>=18
R3 : Select Nom, Tél From Utilisateur where Pays =”Algérie”

1) Faire une fragmentation horizontale de la relation Utilisateur. (7 pts)

C1 : Age<18
C2 : DE >= ‘01-01-2022’  Age>=18
C3 : Pays =”Algérie”

CC={ C1 C2  C3, ¬C1 C2  C3, C1 ¬C2  C3, C1 C2  ¬C3, ¬C1 ¬C2  C3, ¬C1 C2  ¬C3, C1 ¬C2  ¬C3,
¬C1 ¬C2  ¬C3}

On remarque que C1 est contradictoire avec C2, donc :


CC1 = C1 C2  C3 Fausse (0.5)
CC4 = C1 C2  ¬C3 Fausse (0.5)

CC2 = ¬C1 C2  C3 = Age>=18  (DE >= ‘01-01-2022’  Age>=18)  Pays =”Algérie”


= Age>=18  DE >= ‘01-01-2022’  Pays =”Algérie” Fragment1 (1)

CC3 = C1 ¬C2  C3 = Age<18  (DE < ‘01-01-2022’  Age<18)  Pays =”Algérie” A  (A B)= A
= Age<18  Pays =”Algérie” Fragment2 (1)

CC5 = ¬C1 ¬C2  C3 = Age>=18  (DE < ‘01-01-2022’  Age<18)  Pays =”Algérie”
= [(Age>=18  DE < ‘01-01-2022’)  (Age>=18  Age<18)]  Pays =”Algérie”
= Age>=18  DE < ‘01-01-2022’  Pays =”Algérie” Fragment3 (1)

CC6 = ¬C1 C2  ¬C3 = Age>=18  (DE >= ‘01-01-2022’  Age>=18)  Pays ≠”Algérie”
= Age>=18  DE >= ‘01-01-2022’  Pays ≠”Algérie” Fragment4 (1)

1/3
CC7 = C1 ¬C2  ¬C3 = Age<18  (DE < ‘01-01-2022’  Age<18)  Pays ≠”Algérie” A  (A B)= A
= Age<18  Pays ≠”Algérie” Fragment5 (1)

CC8 = ¬C1 ¬C2  ¬C3 = Age>=18  (DE < ‘01-01-2022’  Age<18)  Pays ≠”Algérie”
= [(Age>=18  DE < ‘01-01-2022’)  (Age>=18  Age<18)]  Pays ≠” Algérie”
= Age>=18  DE < ‘01-01-2022’  Pays ≠ ”Algérie” Fragment6 (1)

2) Faire une fragmentation mixte de la relation Utilisateur. (6 pts)

P1 = ID, Nom, Prénom, Ville, Pays ̅̅̅̅


𝑷𝟏 = ID, email, MP, DE, DDA, CP, Tél, Age
P2 = ID, Nom, Prénom, email, DDA ̅̅̅̅
𝑷𝟐 = ID, MP, DE, Ville, Pays, CP, Tél, Age (0.25)
P3 = ID, Nom, Tél ̅̅̅̅
𝑷𝟑 = ID, Prénom, email, MP, DE, DDA, Ville, Pays,
CP, Age

F1 : Age>=18  DE >= ‘01-01-2022’  Pays =”Algérie” (C2  C3)


IP= {P2P3, ̅̅̅̅
𝑷𝟐  P3, P2 ̅̅̅̅ 𝑷𝟐  ̅̅̅̅
𝑷𝟑 , ̅̅̅̅ 𝑷𝟑 }
IP= {(ID, Nom), (ID, Tél), (ID, Prénom, email, DDA), (ID, MP, DE, Ville, Pays, CP, Age)} (1)

F2 : Age<18  Pays =”Algérie” (C1  C3)


IP= {P1P3, ̅̅̅̅
𝑷𝟏  P3, P1 ̅̅̅̅ 𝑷𝟏  ̅̅̅̅
𝑷𝟑 , ̅̅̅̅ 𝑷𝟑 }
IP= {(ID, Nom), (ID, Tél), (ID, Prénom, Ville, Pays), (ID, email, MP, DE, DDA, CP, Age)} (1)

F3 : Age>=18  DE < ‘01-01-2022’  Pays =”Algérie” (C3)


IP= {P3, ̅̅̅̅
𝑷𝟑 }
IP= {(ID, Nom, Tél), (ID, Prénom, email, MP, DE, DDA, Ville, Pays, CP, Age)} (1)

F4 : Age>=18  DE >= ‘01-01-2022’  Pays ≠”Algérie” (C2)


IP= {P2, ̅̅̅̅
𝑷𝟐 }
IP= {(ID, Nom, Prénom, email, DDA), (ID, MP, DE, Ville, Pays, CP, Tél, Age)} (1)

F5 : Age<18  Pays ≠”Algérie” (C1)


IP= {P1, ̅̅̅̅
𝑷𝟏 }
IP= {(ID, Nom, Prénom, Ville, Pays), (ID, email, MP, DE, DDA, CP, Tél, Age)} (1)

F6 : Age>=18  DE < ‘01-01-2022’  Pays ≠ ”Algérie”


: n’est concerné par aucune requête (1)

2/3
Nom et prénoms :
..........................................................
..........................................................

Option/ Groupe : ……………………………

Exercice2 (7 pts)
La base de données déductive d’un graphe dirigé contient les prédicats suivants :
Le prédicat extensionnel Arête (x, y) : précise qu’il existe un arc reliant le sommet X vers le sommet Y.
Le prédicat intentionnel Chemin (x, y) : exprime le fait qu’il existe une suite d’arcs du sommet X vers
le sommet Y.

1) Définir le prédicat intentionnel Chemin. (2 pts)

Chemin (x, y) :- Arête (x, y)


Chemin (x, y) :- Arête (x, z) & Chemin (z, y)

2) Soit l’extension du prédicat Arête : (5 pts)


Arête
1 2
3 1
2 5
2 4
3 5

Répondre à la question suivante en utilisant l’approche par point fixe : Chemin (1, y)?
(Montrer toutes les étapes de l’approche point fixe)

I0 = ɸ
I1 = I0 U { Arete(1, 2), Arete(3, 1), Arete(2, 5), Arete(2, 4), Arete(3, 5)} (0.75)
I2 = I1 U {Chemin(1, 2), Chemin(3, 1), Chemin(2, 5), Chemin(2, 4), Chemin(3, 5)} (0.75)
I3 = I2 U {Chemin(1, 5), Chemin(1, 4), Chemin(3, 2)} (0.75)
I4 = I3 U {Chemin(3, 4)} (0.75)
I5 = I4 U ɸ = I4 (0.5)

Les solutions : Chemin(1, 2), Chemin(1, 5), Chemin(1, 4) (1.5)

3/3

Vous aimerez peut-être aussi