Vous êtes sur la page 1sur 8

CH 4 : Dmarche de dtermination de la structure dune base de donnes

Mr. Anis elbehi

DEMARCHE DE DETERMINATION DE LA STRUCTURE DUNE BASE DE DONNEES

1. Introduction
.
.
Ce travail de rflexion sappelle conception ou . de la BD.

Monde rel

Base de donnes

Figure 4.1 : Traduction de domaine(s) en base de donnes.


Pour dterminer la structure dune BD il faut suivre les tapes suivantes :
1)
2)
3)
4)
5)
6)
7)
Afin de mieux comprendre chaque partie nous allons raliser les tapes prcdentes pour lexemple suivant :
APPLICATION :
Enonc :
Soit reprsenter l'activit d'une bibliothque disposant d'un ensemble de livres qu'elle met la disposition de ses
abonns.
Chaque livre de la bibliothque est dcrit laide dun code unique, un titre, un auteur, un diteur et une date de
parution (sortie).
L'enregistrement d'un nouvel abonn consiste renseigner son numro qui servira comme identifiant, son nom et
prnom, son adresse et son numro de tlphone.
Chaque abonn peut emprunter plusieurs livres. A chaque emprunt on enregistre le code du livre, le numro de
labonn et la date d'emprunt. Au retour du livre on enregistre la date de retour.
Objectif :
Notre objectif est de dduire la structure dune base de donnes partir de lnonc prcdent.

2. Dlimiter le(s) domaine(s)


Cette premire tape consiste .
(lyce, bibliothque, tournoi sportif, magasin, )
Une fois les domaines identifis, on doit collecter les informations qui feront lobjet de la BD laide des
personnes concernes et en utilisant les documents utiliss (fiches, dossiers, fichiers, feuilles de calcul, ).
Question : Quel est le domaine relatif lnonc de lapplication prcdente ?
Rponse : .
Lyce othmen chatti Msaken

4SI_Base de donnes

1/8

CH 4 : Dmarche de dtermination de la structure dune base de donnes

Mr. Anis elbehi

3. Dterminer les colonnes


Il sagit de .
Chaque colonne est une donne qui se rapporte un sujet du monde rel. Par exemple, pour le sujet voiture on
peut avoir les donnes (colonnes) suivantes : matricule, marque, puissance et couleur.
Pour dterminer la liste des colonnes il faut respecter les rgles suivantes :
Rgle N1 :
.....c'est--dire que pour la manipuler, on ne doit pas tre oblig de la dcomposer.
Exemple : Le nom et le prnom dun lve doivent tre reprsent par deux colonnes (nom et prnom).
Rgle N2 : Une colonne ne doit pas correspondre une information calcule ou drive partir dautres
colonnes.
Exemple : Si nous avons une colonne note et une colonne coefficient , on ne doit pas rajouter une
colonne note finale qui est le rsultat de la multiplication de la note par le coefficient.
Rgle N3 : ..
Exemple : Si nous avons trois colonnes pour prsenter une mme note note_nc2 , note_cont2 et
NC2 , on doit les remplacer par une seule colonne note2 .
Rgle N4 :
Exemple : Si nous omettons la colonne note_cont1 pour une matire, il sera impossible de calculer la
moyenne de la matire.
Pour laborer la liste de colonnes, on peut utiliser un tableau ayant la structure suivante :

Valeurs
autorises

Type de
donnes

Valeur par
dfaut

Description

Obligatoire

Nom
colonne

Taille

Liste des colonnes

Sujet

Figure 4.2 : Tableau de description de colonnes


On doit sassurer que pour chaque colonne les rgles cites ci-dessus sont toutes vrifies.
Question : Etablir la liste des colonnes de lapplication.
Corrig : Liste des colonnes :
La liste des colonnes est dduite partir de lnonc et ce en mettant en valeur les proprits.
Soit reprsenter l'activit d'une bibliothque disposant d'un ensemble de livres qu'elle met la
disposition de ses abonns. Chaque existe en un seul exemplaire.
Chaque livre de la bibliothque est dcrit laide dun code unique, un titre, un auteur, un diteur et
une date de parution.
L'enregistrement d'un nouvel abonn consiste renseigner son numro qui servira comme
identifiant, son nom et prnom, son adresse et son numro de tlphone.
Chaque abonn peut emprunter plusieurs livres. A chaque emprunt on enregistre le code du livre, le
numro de labonn et la date d'emprunt. Au retour du livre on enregistre la date de retour.
Ces proprits seront regroupes dans le tableau qui suit.
Lyce othmen chatti Msaken

4SI_Base de donnes

2/8

CH 4 : Dmarche de dtermination de la structure dune base de donnes

Mr. Anis elbehi

Dans la premire colonne, il est recommand dutiliser les mmes rgles de nommage quen programmation
(viter les caractres accentus, rduire la taille des noms des colonnes, etc.).

Type de
donnes

Obligatoire

Code_livre

Code unique du livre

Caractre

10

Livres

Titre

Titre du livre

Caractre

50

Livres

Auteur

Noms des auteurs

Caractre

50

Livres

Editeur

Nom de la maison ddition

Caractre

30

Livres

Date_parution

Date de sortie du livre

Date

Livres

Num_abonne

Numro de labonn

Numrique

Abonns

Nom_abonne

Nom de famille de labonn

Caractre

20

Abonns

Prenom_abonne

Prnom de labonn

Caractre

20

Abonns

Adresse

Adresse de labonn

Caractre

50

Abonns

Tel

N de tlphone de labonn

Caractre

20

Abonns

Code_liv_emp

Code du livre emprunt

Caractre

10

(1)

Emprunts

Num_ab_emp

Numro de labonn
empruntant un livre

Numrique

(2)

Emprunts

Date_emprunt

Date de lemprunt du livre

Date

Date_retour

Date de retour du livre

Date

Valeurs
autorises

Description

Valeur par
dfaut

Nom colonne

Taille

Liste des colonnes

(3)

Sujet

Emprunts
(4)

Emprunts

..
..
..
..
..
..
..

4. Dterminer les tables


Il sagit de dterminer la liste des tables qui vont constituer la BD. Chaque table correspond un sujet de domaine
tudi. La liste des tables sera dduite partir du tableau de colonnes. Cette liste peut tre reprsente sous forme
du tableau suivant :
Liste des tables
Nom table

Description

Lyce othmen chatti Msaken

Sujet

4SI_Base de donnes

Figure 4.3 :
Tableau de
description de
tables

3/8

CH 4 : Dmarche de dtermination de la structure dune base de donnes

Mr. Anis elbehi

Question : Etablir la liste des tables


Corrig : Liste des tables
La liste des tables est dduite partir de la liste des colonnes. A chaque sujet correspond une table. Aux trois
sujets Livre , Abonne et Emprunt vont correspondre trois tables.
Pour les tables, on appliquera les mmes rgles de nommage que celles adoptes pour les colonnes.
Liste des tables

5. Affecter les colonnes aux tables


La qualit dune BD dpend fortement de cette tape car

La colonne sujet correspond aux tables auxquelles les colonnes doivent tre affectes.
Pour sassurer quune colonne est affecte la bonne table, il faut respecter les rgles suivantes :
Rgle N1 :
- .
La seule exception est relative aux cls trangres (car une cl trangre sera reprsente par une mme colonne
dans deux tables)
Rgle N2 :
Si une colonne contient les mmes valeurs pour plusieurs lignes il faut vrifier si cette colonne est une cl
trangre. Si oui alors pas de problme si non alors cette colonne se trouve dans la mauvaise table, il faut donc
laffecter une autre table dans laquelle cette anomalie ne se prsente pas.
Exemple :
Si dans une BD on a deux tables CLIENT et LOCATION et quun mme client peut louer des voitures de la
mme agence. Ce client peut louer beaucoup de voitures (chaque mois une voiture).
Si dans la phase de conception de cette BD on place la colonne relative ladresse dun client ADRSCLI dans la
table LOCATION comme a :
CLIENT
NUMCIN
NOM
PRENOM
NUM_TEL

LOCATION
1

NUM_LOC
NUMCIN#
MATVOIT#
DATLOC

ADRSCLI

Dans ce cas ladresse dun client donn va se rpter dans toutes les locations de ce client. Sil a fait 100
locations, son adresse sera rpte 100 fois.
Par exemple : la table LOCATION
NUM_LOC

NUMCIN

MATVOIT

DATLOC

1003

11223344

170 TN 1234

21/03/2010

MSAKEN

1004

32341256

160 TN 9999

22/03/2010

OUARDANINE

1005

11223344

177 TN 5555

01/01/2011

MSAKEN

1006

11223344

160 TN 9999

05/04/2011

MSAKEN

Lyce othmen chatti Msaken

4SI_Base de donnes

ADRSCLI

4/8

CH 4 : Dmarche de dtermination de la structure dune base de donnes

Mr. Anis elbehi

La prsence de cette anomalie (ADRSCLI dans la table LOCATION) dans la BD entrane les inconvnients
suivants :

car la mme information sera stocke plusieurs fois.

.. : laugmentation du volume de donnes d la


redondance augmente le temps de rponse lors de la manipulation des donnes.

.. : engendr par la modification de cette information dans


une ligne et pas dans les autres.

C'est--dire si on modifie ladresse dun client dans la ligne correspondant sa premire location et ne pas le faire
dans les autres lignes ce ci veut dire que le mme client a plusieurs adresses alors que dans la ralit il na quune
seule.
Ladresse du client doit tre donc affecte la table CLIENT.
Question : Affecter les colonnes aux tables et en donner une description textuelle.
Corrig : Affectation des colonnes aux tables :
Il sagit daffecter les colonnes aux tables correspondantes.
Nous utilisons la reprsentation textuelle pour dcrire la structure des tables.
Livre(Code_livre, Titre, Auteur, Editeur, Date_parution)
..
..

6. Dterminer les cls primaires


Chaque table est maintenant dcrite par un ensemble de colonnes.
...
Remarque : Dans la plupart des cas, une cl primaire est compose dune seule colonne, mais dans certains cas,
elle peut tre compose de deux ou plusieurs colonnes. On parle alors de cl compose.
Attention : il arrive parfois o aucune des colonnes de la table ne peut tre utilise comme une cl primaire, dans
ce cas.
Question : Prciser les cls primaires des tables.
Corrig : Cls primaires des tables :
Table Livre : Il est dit dans le texte que le code de chaque livre est . On peut lutiliser comme cl primaire.
Table Abonn : Il est galement mentionn dans le texte que le numro de labonn sert comme ..
On peut donc ladopter comme cl primaire.
Table Emprunt : Un emprunt est identifi par le livre emprunt et labonn qui a emprunt ce livre. On peut donc
supposer que la cl primaire de cette table est compose des deux colonnes Code_liv_emp et Num_ab_emp.
Cependant, en examinant cette table, on peut constater que cette reprsentation nest valide que dans le cas o on
ne garde pas un historique des emprunts, c'est--dire que lorsque labonn retourne le livre, la ligne
correspondante sera supprime de la table Emprunt. Si nous souhaitons garder cet historique on doit rajouter la
date demprunt la cl primaire de la table Emprunt, nous adoptons cette alternative.
La description textuelle de la structure des tables en tenant compte des cls primaires sera la suivante :
..
..
..

Lyce othmen chatti Msaken

4SI_Base de donnes

5/8

CH 4 : Dmarche de dtermination de la structure dune base de donnes


7. Dterminer les liens entre tables

Mr. Anis elbehi

Maintenant que les tables sont compltement dcrites avec leurs colonnes et leurs cls primaires, il reste tablir
les liens ventuels entre ces tables.
La dtermination des liens entre les tables peut tre effectue de deux faons :

Un lien doit tre donc tabli entre les tables A et B pour relier les colonnes cl primaire et cl trangre.

...

Exemple : Supposons que nous avons deux tables Client et Location et que dans la table location nous navons
pas la colonne code_client . Dautre part, dans la description de ces deux tables, nous avons une phrase qui dit
Une location est relative un client . Cette phrase veut dire quil doit y avoir un lien entre les deux tables
location et Client
La table mre = CLIENT
La table fille = LOCATION

Car un client peut avoir plusieurs locations alors quune location est
relative un et un seul client.
Donc il faut ajouter une colonne code_client la table location

Question : Identifier les liens entre les tables


Corrig : Liens entre les tables :
Daprs lnonc, un emprunt est relatif un livre et un abonn. Ainsi, on dduit les deux liens suivants :
un lien entre la table Emprunt et la table Livre
un lien entre la table Emprunt et la table Abonne
Nous utilisons le tableau suivant pour dcrire ces liens :
Table mre

Table fille

Cl primaire

Cl trangre

Prcisons que la cl primaire figure dans la table mre et la cl trangre dans la table fille.
En tenant compte de ces liens entre les tables, la description textuelle des tables devient alors :
Livre(Code_livre , Titre , Auteur , Editeur , Date_parution )
Abonne(Num_abonne , Nom_abonne , Prenom_abonne , Adresse , Tel )
Emprunt(Code_liv_emp ,Num_ab_emp ,Date_emprunt , Date_retour )

8. Analyser et affiner la structure de la base de donnes


Lorsquon a identifi la structure de toutes les tables et tabli les liens entre ces tables, il convient de faire une
reprsentation graphique de la BD afin de lanalyser et de dtecter les anomalies ventuelles. Il pourrait sagir
dun oubli de colonnes ou de liens entre tables.
Apres avoir corrig la structure de la base en cas derreurs, il faut utiliser le .
...
Si une anomalie est constat il faut quelle soit corrige en modifiant la structure (dplacer une colonne dune table
une autre, crer une nouvelle table, clater une colonne en plusieurs colonnes, etc.).
Remarque : Certains SGBD disposent doutils danalyse permettant daider identifier les anomalies de
conception. (Microsoft Access : OutilsAnalyseTable)
Lyce othmen chatti Msaken

4SI_Base de donnes

6/8

CH 4 : Dmarche de dtermination de la structure dune base de donnes

Mr. Anis elbehi

Question : Reprsenter graphiquement la structure de la base de donnes.


Corrig : Reprsentation graphique de la structure de la base de donnes :

Remarque :
Lnonc na pas donn de dtail concernant les auteurs et les diteurs. Nous avons suppos quil sagit
uniquement de leurs noms, ce qui a eu comme consquence de les considrer comme des simples colonnes dans la
table Livre.
Si lnonc avait donn plus dinformations sur les auteurs et les diteurs (code, nom, adresse, etc.), la
consquence

APPLICATION PRATIQUE : MICROSOFT ACCESS


1- Crer en enregistrer la base de donnes (GESTION_BIBLIO) relative lapplication en utilisant Microsoft
Access en respectant la structure dgage plus haut.
2- Remplir les tables par les informations suivantes :

Table Livre

Table Emprunt

Table Abonne

Lyce othmen chatti Msaken

4SI_Base de donnes

7/8

CH 4 : Dmarche de dtermination de la structure dune base de donnes

Mr. Anis elbehi

APPLICATION :
Objectif : Dtecter les anomalies dans la structure de tables.

Enonc : Pour dcrire les employs dune entreprise et leur rpartition entre les diffrents services, la table
suivante a t cre.

Nemp

Nom

Prnom

Date
naissance

Nservice

Nom
service

Date
cration
Service

TOUNSI

Safa

01/10/1980

20

Financier

01/01/1970

KEFI

Ali

12/09/1981

10

Administratif

01/01/1975

BEJI

Mohamed

15/04/1977

20

Financier

01/01/1970

TOUATI

Lamia

21/06/1980

20

Financier

01/01/1970

SOUSSI

Leila

28/11/1982

10

Administrative

01/01/1975

SFAXI

Nouri

20/08/1990

30

Juridique

01/04/1980

GABSI

Mouna

04/04/1987

10

Administratif

01/01/1957

JERBI

Lotfi

09/06/1988

30

Juridique

01/04/1980

EZZAR

Samia

12/12/1982

20

Financier

01/01/1970

Questions :
1- Identifier les anomalies de cette structure.
2- Proposer une structure permettant de pallier ces anomalies.

Lyce othmen chatti Msaken

4SI_Base de donnes

8/8

Vous aimerez peut-être aussi