Normalisation.txt 3.66 KB
Newer Older
1 2 3 4
#Commentaire
Les DF triviales ne sont pas retranscritent sauf pour les relations qui sont toutes clés.

#Table Client
Gaetan Carabetta's avatar
Gaetan Carabetta committed
5 6 7 8 9 10 11
idClient --> nomClient
idClient --> prenomClient
idClient --> ddnClient
idClient --> adresseClient
idClient --> numeroClient

nomClient,prenomClient,ddnClient --> adresseClient
12
nomClient,prenomClient,ddnClient --> numeroClient
Gaetan Carabetta's avatar
Gaetan Carabetta committed
13 14 15 16



#Table Assistant
17 18 19 20 21 22
idAssistant --> nomAssistant
idAssistant --> prenomAssistant
idAssistant --> ddnAssistant
idAssistant --> adresseAssistant
idAssistant --> numeroAssistant
idAssistant --> specialite
Gaetan Carabetta's avatar
Gaetan Carabetta committed
23 24 25

nomAssistant,prenomAssistant,ddnAssistant --> adresseAssistant
nomAssistant,prenomAssistant,ddnAssistant --> numeroAssistant
26
nomAssistant,prenomAssistant,ddnAssistant --> specialite
Gaetan Carabetta's avatar
Gaetan Carabetta committed
27 28 29 30 31 32 33 34


#Table Veterinaire
idVeterinaire --> nomVeterinaire
idVeterinaire --> prenomVeterinaire
idVeterinaire --> ddnVeterinaire
idVeterinaire --> adresseVeterinaire
idVeterinaire --> numeroVeterinaire
35
idVeterinaire --> specialite
Gaetan Carabetta's avatar
Gaetan Carabetta committed
36 37 38

nomVeterinaire,prenomVeterinaire,ddnVeterinaire --> adresseVeterinaire
nomVeterinaire,prenomVeterinaire,ddnVeterinaire --> numeroVeterinaire
39
nomVeterinaire,prenomVeterinaire,ddnVeterinaire --> specialite
Gaetan Carabetta's avatar
Gaetan Carabetta committed
40

41 42
#Table ClasseEspece
nomClasse --> nomClasse
Gaetan Carabetta's avatar
Gaetan Carabetta committed
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68

#Table Espece
nomEspece --> nomClasse


#Table Animal
idAnimal --> nomAnimal
idAnimal --> poids
idAnimal --> taille
idAnimal --> naissance
idAnimal --> idClient
idAnimal --> especeNom


#Table Traitement
idTraitement --> idAnimal
idTraitement --> idVeterinaire



#Table Medicament
nomMolec --> description



#Table especeMedicament
69 70
nomEspece, nomMolec --> nomMolec
nomEspece, nomMolec --> nomEspece
Gaetan Carabetta's avatar
Gaetan Carabetta committed
71 72 73 74 75 76 77


#Table Posologie
idAnimal,nomMolec,debut --> duree
idAnimal,nomMolec,debut --> nbJours


78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
À partir de F+ on obtient les couvertures minimales CM1 et CM2:

CM1= F+ \ {nomClient,prenomClient,ddnClient --> adresseClient
nomClient,prenomClient,ddnClient --> numeroClient,
nomAssistant,prenomAssistant,ddnAssistant --> adresseAssistant,
nomAssistant,prenomAssistant,ddnAssistant --> numeroAssistant,
nomAssistant,prenomAssistant,ddnAssistant --> specialite,
nomVeterinaire,prenomVeterinaire,ddnVeterinaire --> adresseVeterinaire
nomVeterinaire,prenomVeterinaire,ddnVeterinaire --> numeroVeterinaire
nomVeterinaire,prenomVeterinaire,ddnVeterinaire --> specialite }

CM2= F+ \ {idClient --> nomClient,
idClient --> prenomClient,
idClient --> ddnClient,
idClient --> adresseClient,
idClient --> numeroClient,
idAssistant --> nomAssistant,
idAssistant --> prenomAssistant,
idAssistant --> ddnAssistant,
idAssistant --> adresseAssistant,
idAssistant --> numeroAssistant,
idAssistant --> specialite,
idVeterinaire --> nomVeterinaire,
idVeterinaire --> prenomVeterinaire,
idVeterinaire --> ddnVeterinaire,
idVeterinaire --> adresseVeterinaire,
idVeterinaire --> numeroVeterinaire,
idVeterinaire --> specialite}




Gaetan Carabetta's avatar
Gaetan Carabetta committed
110
En considerant l'adresse des tables Client, Assistant et Vétérinaire comme un attribut atomique,
111
nous avons tous les attributs atomiques et toutes les relations avec une clé, alors la BD est en 1NF.
Gaetan Carabetta's avatar
Gaetan Carabetta committed
112

113 114
Nous avons déjà la BD en 1NF, de plus, tous les attributs des relations de la BD ne dépendent pas
d'une partie des clés mais de toute la clé, alors nous sommes en 2NF.
Gaetan Carabetta's avatar
Gaetan Carabetta committed
115

116
Nous sommes déjà en 2NF, et les attributs non-clés des relations ne dépendent que des clés candidates. Alors nous respectons aussi la 3NF.
Gaetan Carabetta's avatar
Gaetan Carabetta committed
117

118 119 120 121
Nous sommes aussi en BCNF car nous sommes en 3NF, et il n'y a pas d'attributs non-clés qui déterminent un attribut clé.
Par exemple dans les tables Client, Assistant et Vétérinaire, il y a deux clés
candidates qui déterminent tous les attributs, dû à l'utilisation d'une clé artificielle.
Donc tous ces attributs sont clés et aucun des autres attributs non-clé ne détermine ces attributs clés.