e. Base de données
Une base de données est une collection d'informations
organisées selon différents types et pouvant être
facilement consultables, gérables et mises à jour.Les
données sont organisées donc en colonnes, les lignes et
tableaux.
La création d'une base des données
normalisée se fait suivant trois grands niveaux :
- Niveau conceptuel : ici nous voyons le
diagramme de classe présentée dans la figure 16,
- Niveau relationnel,
- Niveau physique : à ce niveau
on implémente le modèle dans un SGBDR. C'est le traduire dans un
langage de requête ; ici SQL est utilisé.
· Modèle relationnel
Pour passer du diagramme de classe au modèle
relationnel, il faut que le diagramme de classe respecte primordialement les
formes de normalisation d'une base de données. Après suivront les
règles de transformation qui dépendront bien des
multiplicités ou cardinalités maximales des associations entre
les classes. On distingue trois familles d'associations :
- un-à-plusieurs :
ici il faut ajouter un attribut de type clé étrangère
dans la relation fils de l'association. L'attribut portera
donc le nom de la clé primaire de la relation
père de l'association. La relation père est
celle où on trouve une cardinalité égale à
1 et la relation fils est celle où on trouve une
cardinalité plusieurs. Pour se rappeler facilement de
cette règle, on la décrit de la manière suivante :
la clé primaire du père migre dans la relation fils ;
- plusieurs-à-plusieurs et
n-aires : ici l'association (classe-association)
devient une relation dont la clé primaire est composée par la
concaténation des identifiants des entités (classes)
connectés à l'association. Les attributs de l'association (classe
association) doivent être ajoutés à la nouvelle relation et
ne sont ni clé primaire, ni clé étrangère.[36] ;
- un-à-un :si les deux
relations minimales sont égales à un, il est
préférable de fusionner les deux entités
(classes).
Partant des règles cites ci-haut, voici ce que nous
avons produit comme modèle :
ADMIN [idAdmin, nomAdmin,
postnomAdmin, username, password, photoAdmin]
ENFANT [idEnfant, nomEnfant,
postnomEnfant, prenomEnfant, nomPere, nomMere, phonePere, phoneMere,
dateNaissance, photoEnfant, #idAdmin, #idAdresse]
ADRESSE [idAdresse, ville, quartier,
avenue, cellule, numParcelle, longitude, latitude]
|