Vous êtes sur la page 1sur 15

SYSTEME DE GESTION DES BASES DE DONNEES

I- LES BASES DE DONNEES

I-1) Définition

Une base de données est un ensemble structuré de données enregistrées sur des supports
accessibles par l’ordinateur pour satisfaire simultanément plusieurs utilisateurs de façon
sélective et en un temps opportun. Elle doit avoir un certain nombre de caractéristiques :
Données structurées : les informations contenues dans une base de données sont réparties
en enregistrements, chaque enregistrement ayant une structure bien définie.
Données non redondantes : Une même information ne sera pas répétée plusieurs fois
dans la base de données.
Données cohérentes : Il ne doit pas être permis d’enregistrer dans une base des
informations incohérentes entre elles.
Données accessibles : l’accessibilité aux données devrait se concrétiser directement selon
de multiples critères.
Indépendance des programmes et des données : La base de données doit être
indépendante des programmes qui y ont accès, on doit pouvoir utiliser un autre
programme pour traiter différemment ces données sans avoir à toucher à ces données.
Sécurité des données stockées : la base de données doit permettre un système de sécurité
pour gérer les droits d’accès aux informations par les utilisateurs.
I-2) L’organisation des données dans la base de données
L’exploitation des données dans la base nécessite une modélisation de celles-ci par une
représentation du monde réel en une structure de données de tel sorte qu’elle soit
exploitable facilement.
Les informations doivent être segmentées en données et stockées dans des tables. Une
table est une représentation d’un ensemble de données d’une entité, organisées en lignes
et en colonnes. On peut stocker dans une table n’importe quel type d’information (texte,
chiffres, graphisme, son, etc...) Chaque table est divisée en enregistrements, les
enregistrements étant l’ensemble des données relatives à la même information. Prenons
l’exemple d’un carnet d’adresses, pour lequel, nous allons utiliser une table « contacts »
qui contiendra toutes les informations concernant chaque contact, chaque enregistrement
contiendra les informations relatives à un (et un seul) contact (nom, adresse, téléphone,
date de naissance, etc.…). Chaque enregistrement contient un ensemble d’informations
(nom, adresse, téléphone), dont chacune occupe un champ.

BASE DE DONNEES

………..
TABLE1 TABLE2 TABLE3

………
Enregistrement1 Enregistrement2 Enregistrement3

Champ1 Champ2 Champ3


………

REPRESENTATION STRUCTURELLE DE LA BASE DE DONNEES

Une base de données est un ensemble structuré et organisé de données qui représente un
système d'informations sélectionnées de telle sorte qu'elles puissent être consultées par des
utilisateurs ou par des programmes. Ces données devraient se performer aux propriétés
d’exhaustivité de non redondance. Dans une Bibliothèque, il s'agit de l'ensemble formé par
les références des ouvrages, des auteurs, des éditeurs, etc. Dans une entreprise, la base de
données contient l'ensemble des données concernant les clients, les fournisseurs, les
employés, les références des produits fabriqués… et permet d'établir des relations entre ces
différentes entités.
Comme on ne peut pas toujours prévoir, lors de la création de la structure de la table, de
l’usage qui en sera fait plus tard, il faut diviser le plus possible les données, sachant qu’il sera
toujours compliqué de modifier la structure de la table par la suite lorsqu’elle sera remplie.
Donc lors de la création de la structure d’une base de données il faut diviser le plus possible
l’information pour pouvoir la traiter par la suite le plus simplement et le plus efficacement
possible.

La représentation d’un ensemble d’informations relatives à un ouvrage sous forme d’une table
est la suivante :
Noms des champs ou Items Champs

N° Côte Titre Auteur Maison Edit Lieu Edit ISBN

01 25-254- Introduction aux Castellani Eyrolles Paris 1254-2541-


25 bases de données 2254
02 22-747- Enregistrement
- La 01 base de
03 333-254- Système de Gestion Philippe
77 des Bases de Rigaux
04 Les Misérables Victor
Hugo
.…. ……… ………… ….. ………… ………. …..
données : C’est l’ensemble des tables utilisées pour gérer l’information.

- La table : c’est un ensemble de données organisées en rangées et en colonnes.

- Le nom de champ (ou colonne) : C’est l’unité d’information dans une table. Une table est

constituée de différents champs.

- L’enregistrement (ou la ligne) : C’est l’ensemble des données relatif à la même information.

Chaque colonne représente le nom d’un champ dans la table.


Une ligne est un enregistrement dans la table.
Une cellule est un champ dans l’enregistrement.

I-3) Démarches conceptuelles pour la construction d’une base de données

Nous traitons le sujet à travers l’exemple d’une maison d’édition des ouvrages.
Il s’agit de saisir les informations des auteurs et des ouvrages, qui leurs sont appropriés. En un
premier temps, nous regroupons toutes les informations en une seule table, celles relatives à
l’auteur et celle à l’ouvrage :

COLLECTION
Nom Auteur
Prénom Auteur
Date de Naissance
Titre ouvrage
Date Edition
ISBN
On a regroupé dans une Volume même table toutes les informations relatives
au même sujet. Par contre il serait plus judicieux de regrouper l’ensemble les données
concernant uniquement l’identité de l’auteur et dans une autre table les informations relatives
uniquement à l’ouvrage (par exemple, date d’édition d’un ouvrage n’a pas de rapport direct
avec l’identité de l’auteur, on la trouvera dans une autre table).

Un bon moyen pour trouver les tables utilisées est de partir de la situation existante :

Un auteur produit des ouvrages, à un auteur peut correspondre plusieurs ouvrages, on en


déduit directement une table « auteurs » et une table « ouvrages ».

Ce qui nous permet d’enrichir les informations sur les auteurs, on peut par exemple ajouter la
date de naissance ou son adresse, ce qui aurait été moins évident dans la 1ère version, en effet,
il aurait fallu, pour chaque ouvrage d’un auteur, ressaisir à chaque fois a date de naissance et
son adresse (sans compter les erreurs de frappe d’un ouvrage à l’autre), là les informations ne
sont saisies qu’une seule fois, ce qui est d’abord moins fatiguant et ensuite, évite les fautes de
frappes.

Auteur OUVRAGE
Nom Auteur Titre ouvrage
Prénom Auteur Date Edition
Date de Naissance ISBN
Adresse Volume
Téléphone Langue
Email Tomes
Avec deux tables, enregistrées séparément, on ne sait plus qui a fait quoi, les informations
sont éparpillées. Il va donc falloir trouver un moyen pour savoir exactement à quel auteur
correspond chaque ouvrage. Pour cela on va ajouter dans la table auteur un champ qui va
identifier de façon unique chaque enregistrement, ce champ d’identification unique est appelé
clef primaire.

A quoi sert cette clef ? A pouvoir retrouver de façon non équivoque n’importe quel
enregistrement dans la table « Auteurs », on ne peut en effet utiliser le nom ou le prénom
comme clef primaire car deux auteurs peuvent avoir le même nom (rare mais pas impossible).

Le numéro de sécurité sociale est un bon exemple de champ clef primaire car il identifie de
manière unique un individu. Même si deux individus ont le même nom et le même prénom, ils
ne peuvent avoir le même numéro de sécurité sociale.

Nous ajoutons un identifiant unique, commun aux deux tables afin qu’on établisse la relation
qui a Auteur produit OUVRAGE quoi. Cet identifiant
N°Auteur N°Auteur
est le Numéro de l’Auteur.
Nom Auteur Titre ouvrage
Prénom Auteur Date Edition
Date de Naissance ISBN
Adresse Volume
Téléphone Langue
Email Tomes
On voit ici que cette organisation répond à une des exigences des bases de données, à savoir
la non redondance des informations, dans la première organisation, le nom et le prénom de
l’auteur étaient répétés autant de fois qu’il avait produit d’ouvrages, ici il ne sera présent
qu’une seule fois. Lorsqu’on voudra afficher les caractéristiques d’un ouvrage, grâce au
numéro de l’auteur présent dans l’enregistrement de la table « ouvrages », on ira chercher
automatiquement les informations le concernant dans la table « Auteurs ». Cette organisation
a un avantage, le jour où on veut modifier le nom ou le prénom d’un auteur, cette
modification sera répercutée automatiquement sur les ouvrages qu’il aura produits.
 Clef primaire réalisée à partir de plusieurs champs
Lorsqu’on est sûr que le contenu d’une combinaison de champs ne se répétera pas dans une
table, on peut utiliser cette combinaison de champs comme clef primaire. On aurait pu, à la
place d’un n° d’auteur, utiliser la combinaison « nom + prénom + date de naissance », parce
qu’il est rare que deux auteurs différents aient le même nom et le même prénom et la même
date de naissance. Mais ce type de combinaison complexe est difficile à maintenir (il est plus
simple de taper un numéro qu’une combinaison complexe de noms et de date, sans parler des
erreurs de frappes) et en plus prendrait plus de place dans la base de données (on ne voit pas
trop l’intérêt de découper les informations en deux tables si c’est pour retrouver dans le n° de
l’auteur utilisé dans la table «Albums » quasiment toutes les informations contenues dans la
table « Auteurs » !). Et pour terminer, ce genre de clef primaire complexe fonctionne mal
dans Access.
Grâce a cette clef, on va pouvoir mettre les deux tables en relation. Établir une relation entre
les tables de la base de données va permettre de réunir (pour les exploiter ensemble, les
analyser, ...) les informations réparties dans différentes tables. La liaison se fait entre les
tables à partir de la clef primaire, ici, on obtiendra la liste des ouvrages d’un auteur grâce à la
liaison entre la table Auteur et la table ouvrage sur la clef primaire n° auteur.
I-4) Types de relations entre les tables :

1- La relation de type « un à plusieurs » (1 – n)


Un enregistrement d’une table est en relation avec plusieurs enregistrements d’une autre table.

Auteur OUVRAGE
Enregistrement1 Enregistrement1
Enregistrement2 Enregistrement2
Enregistrement3 Enregistrement3
…………. Enregistrement4
…………..
Exemple : à un auteur correspond un ou plusieurs ouvrages (un
ou plusieurs flèches partent du même auteur), à chaque ouvrage ne correspond qu’un seul
auteur.

Exemple : à un auteur correspond un ou plusieurs albums (plusieurs flèches partent du même


auteur), à chaque album ne correspond qu’un seul auteur.
La relation entre les deux tables se présente sous cette forme :

Auteur OUVRAGE
1 n
N°Auteur N°Auteur
Nom Auteur Titre ouvrage
Prénom Auteur Date Edition
Date de Naissance ISBN
Adresse Volume
2- La relation de type «plusieurs à un » (m – 1)

Auteur OUVRAGE
Enregistrement1 Enregistrement1
Enregistrement2 Enregistrement2
Enregistrement3 Enregistrement3
Enregistrement4 …………..
………….
Exemple : Un ouvrage est produit par un ou plusieurs auteurs (un ou plusieurs flèches partent
du même ouvrage), à chaque auteur ne correspond qu’un seul ouvrage.
3- La relation « plusieurs à plusieurs » (m – n)
Un enregistrement de la table primaire peut être en relation avec plusieurs enregistrements de
la table reliée et inversement, un enregistrement de la table reliée peut être en relation avec
plusieurs enregistrements de la table primaire. Pour gérer ce type de relation, il faut la scinder
en deux relations :
Une relation « un – plusieurs » et une relation « plusieurs – un ».
Exemple : On aurait pu avoir le cas où un ouvrage a plusieurs auteurs, or dans notre fichier
« ouvrage » on a prévu qu’un item pour l’auteur, donc défaut de concept de structure de la
table « ouvrage » . Si on veut permettre qu’à un ouvrage correspondent plusieurs auteurs (on a
alors une relation n – m), deux solutions s’offrent à nous :
1. La plus simple est d’ajouter quelques champs « auteurs » supplémentaires dans la
table « ouvrage » pour aboutir à ce genre de table et de conserver une relation 1 – n :

OUVRAGE
N°Auteur1
N° Auteur2
N° Auteur3
Titre ouvrage
Date Edition
ISBN
Volume

Dans ce type de configuration, nous préconisons un nombre fixe de nombre d’auteurs par
ouvrage, dans notre exemple ce nombre est de 3. Alors s’agissant d’un ouvrage où le nombre
d’auteurs est inférieur à 3, on sera obligé de réserver 3 champs Auteur, d’où une perte
d’espace mémoire, et s’il s’agit d’un nombre supérieur à 3, on ne pourra saisir que les noms
de 3 Auteurs, donc ce type de configuration est à éviter.
Il va donc falloir créer une troisième table qui va servir d’intermédiaire entre la table
«Auteurs » et la table « Ouvrage » :

Auteur Auteur/Ouvrage
1 n
N°Auteur N°Auteur Ouvrage
N°Ouvrage m 1
Nom Auteur N°Ouvrage
Prénom Auteur Titre ouvrage
Date de Naissance Date Edition
Adresse ISBN
Volume
Dans ce schéma conceptuel, on fait correspondre à chaque Auteur n
enregistrements dans la nouvelle table «Auteurs/Ouvrage», et chaque enregistrement de cette
dernière table correspond un seul enregistrement de la table « Ouvrage». Et aussi pour chaque
ouvrage on peur correspondre m enregistrements dans la table «Auteurs/Ouvrage», et chaque
enregistrement renvoie un seul enregistrement dans la table « Auteur », d’où le type de
relation entre les tables « Auteur » et « Ouvrage » est n—m.
On va avoir dans ces tables :
 Table Auteur
N°Auteur Nom Auteur Prénom Auteur Date de Naissance
1 Dib Mohammed 21 Juillet 1920
2 Feraoun Mouloud 08 Mars 1913
3 Kateb Yacine 02 Août 1929
4 Djebbar Assia 30 Juin 1936

 Table Ouvrage
N°Ouvrage Titre Ouvrage Date Edit ISBN Volume
1 Le Polygone étoilé 1997 9782020319874 26
2 Nulle part dans la maison de mon père 2007 9782213635408 25
3 La grande Maison 1952 9782163363355 27
4 Loin de Médine 1991 9782226052599 24

 Table Auteur/Ouvrage
N°Auteur N°Ouvrage
1 3
1 4
2 1
3 1
4 2
4 4

Nous illustrons dans ce concept de représentation au niveau de la table « Auteur/Ouvrage »,


que l’auteur Dib Mohammed, et Djebbar Assia ont chacun 2 ouvrages et les ouvrages « Le
Polygone étoilé » et « Loin de Médine » ont été produits chacun par 2 auteurs.

I-5) Les index

Pour optimiser les temps de recherche dans les tables, Le programme de gestion de bases

données (SGBD) ) a besoin d’index. L’index permet à ce programme de retrouver plus

rapidement les enregistrements concernés ; il accélère aussi les opérations de tri.


Les index fonctionnent avec une table comme la table des matières avec un livre. Lorsqu’on

indexe un champ, le SGBD stocke hors de la table les valeurs de ce champ. Lorsqu’on

effectue une recherche sur ce champ, plutôt que de le chercher dans la table, le SGBD va faire

sa recherche dans l’index, une fois qu’il aura trouvé, il affichera le contenu de

l’enregistrement associé à cet index.

INDEX OUVRAGE
1 Enregistrement
Le Polygone étoilé 1
1997
9782020319874
Lorsqu’on cherchera un 26
enregistrement de la
table « Ouvrage » à partir du titre du 2 titre Enregistrement
de l’ouvrage, le
Nulle part dans la maison de mon père 2
SGBD parcourra l’index et affichera l’enregistrement
2007
Le Polygone étoilé
correspondant à 9782213635408 l’index qu’il aura trouvé.
Nulle part dans la
Un index peut maison de mon père 25 être composé d’un ou de
La grande Maison 3 Enregistrement
plusieurs Loin de Médine La grande Maison champs,
3 on aurait pu
indexer la 1952 table « Ouvrage » sur un
9782163363355
index « titre + année » par exemple, 27 L’idée de créer un index,
accélérerait les recherches et les tris 4 Enregistrement
mais ralentirait toutes les
Loin de Médine 4
mises à jour de la table, en effet, à chaque fois qu’un champ
1991
index est modifié dans la table, il faut 9782226052599 le modifier également
24
dans l’index, ce qui peut coûter en temps. On utilisera donc
les index en cas de nécessité.
II- SYSTEMES DE GESTION DES BASES DE DONNEES ACCESS

Un système de Gestion des Bases de Données est un logiciel qui permet de gérer les bases de
données, notamment la Création d’une BD, la modification de la structure des tables,
l’interrogation la BD, et la Modification de la BD ; parmi ces logiciels on connait ACCESS,
MySQL, SQL Server, Oracle, DB2, …

II-1 Création d’une nouvelle Base de Données


La première chose à faire est de lancer Access par le menu Démarrer et Microsoft Office.
Access est le logiciel représenté par une clé mauve. On choisit le bouton BASE DE
DONNEES VIDE, Access demande un nom de fichier pour la base, alors on choisit le dossier
d'accueil et on indique le nom du fichier, puis valider avec le bouton CREER.
Une base sous Access est enregistrée dans un fichier unique avec l'extension .aacdb .
Dès lors , il faut penser à créer les tables constituant la base de données.
Création de tables :
La création de table se présente selon 3 modes :
1- Mode de création à partir d’un modèle
Access met à votre disposition quelques modèles de table contenant des champs prédéfinis.
Les tables basées sur un modèle pourront bien être ensuite personnalisées. Dans l’onglet
Créer, cliquez sur le bouton Modèles de tables visible dans le groupe Tables.
Access met cinq modèles à votre disposition (Contacts – Tâches - Problèmes – Evènements -
Biens). Cliquez sur l’un des modèles en fonction de la table qu’on souhaite créer. Une
nouvelle table contenant des champs prédéfinis s’ouvre en mode Feuille de données.
2- Création de table en mode Feuille de données
Il s’agit ici de créer une table vide à laquelle vous allez ajouter des champs en mode Feuille
de données. Dans l’onglet Créer, cliquez sur le bouton Table visible dans le groupe du même
nom. Une nouvelle table contenant uniquement le champ N° s’ouvre en mode Feuille de
données. La colonne Ajouter un nouveau champ est sélectionnée.
Ajoutez les champs à la table puis spécifiez le type de données pour chaque champ (cf.
Modifier la structure d’une table en mode Feuille de données de ce chapitre) ; les différents
types de données (Texte, Mémo, Numérique...) sont expliqués dans le sous‐titre suivant Créer
une table en mode Création.
3- Mode Création
Créer une table en mode Création, Il s’agit de créer des tables vides à laquelle il faut ajouter
des champs en mode ‘création’.
Dans l’onglet Créer, cliquez sur le bouton Création de table visible dans le groupe Tables.
La fenêtre de création d’une table s’affiche à l’écran. Vous pouvez remarquer l’apparition de
l’onglet contextuel Création qui est sélectionné.
Cliquez dans la première cellule vide de la colonne Nom du champ et tapez le nom du champ:
de 1 à 64 caractères maximum à l’exception du point (.), du point d’exclamation (!), de
l’apostrophe inverse (`) et des crochets ([ ]).
La structure de la table permet de préciser les noms des champs qui la composent ainsi que

diverses propriétés comme, par exemple, le type de données autorisées pour ce champ, et le

nombre maximal de caractères autorisés (longueur du champ).

Un des champs de la base de données doit permettre d’identifier chaque enregistrement de

façon unique : il s’agit de la clé primaire

(si ce n’est pas le cas, Access peut créer lui‐même le champ et gérer les données qu’il contient

de façon automatique).

3.2 Les types de données


Chaque champ peut contenir des données de différents types : le nom du client va contenir des
caractères alphabétiques, le code postal va contenir des chiffres, la date de livraison une date,
un champ prix va contenir des valeurs monétaires.
Il faut choisir, pour chaque champ de la table, le type de données le plus approprié, en effet,
rien n’interdit de choisir comme type de données pour un champ contenant une date ou un
code postal un type « texte » ou pour champ contenant un prix un type « numérique », mais
autant utiliser les types les plus appropriés .
Les différents types sont :

Texte : Pour un champ destiné à contenir des caractères alphanumériques (lettres et/ou

chiffres), attention, le champ de type texte ne peut contenir plus de 255 caractères, on l’utilise

pour un nom, une adresse, etc…

Mémo : Même utilisation que le type texte, mais le champ de type mémo peut contenir jusque

65535 caractères (64 Ko). Utilisé pour une description longue par exemple.

Numérique : Le champ ne pourra contenir que des nombres avec ou sans décimales. (un code

postal, un n° d’identification par exemple).

Date/Heure : Le champ ne pourra contenir que des dates ou des heures (Access vérifie la

validité des dates ou des heures saisies)

Monétaire : Valeurs présentées sous format monétaire.

Numéro-Auto Valeur numérique incrémentée automatiquement lors de la saisie de chaque

enregistrement. Si vous choisissez ce type de champ, vous ne pourrez rien saisir dedans, c’est

Access qui y placera un nombre automatiquement à chaque fois que vous créerez un nouvel
enregistrement. On l’utilisera lorsqu’on veut être sur que le contenu de ce champ ne se

retrouvera pas dans un autre enregistrement de la table, par exemple pour le numéro de client :

chaque nouveau client aura un numéro unique automatiquement affecté par Access, c'est un

champ de ce type qui sera le plus souvent utilisé pour être une clef primaire.

Oui/Non : Seules deux données sont autorisées dans ce champ : Oui et Non (on utilisera ce

type de données par exemple avec un champ « réglé » qui indiquera si une facture a été réglée

ou non)

Objet OLE: OLE (Object Linked and Embbeded) est une technologie utilisée par Windows,

elle permet d’insérer dans une application des objets provenant d’autres applications, on

utilisera un champ de ce type pour insérer dans la table une image, un son, un fichier

Word, etc...

Lien Hypertexte Un champ de ce type contiendra une adresse Internet sur laquelle on pourra

cliquer directement.

3.3 Les propriétés des champs

Comme vous pouvez le constater, chaque champ a des propriétés qui dépendent de son type

de données, ces propriétés vont déterminer la façon dont les données qu’il contienne vont être

affichées ou comment les données vont être saisies dans ce champ. Ces propriétés sont

affichées dans l’onglet « Général » en bas de la fenêtre. L’onglet « Général » affiche chaque

propriété du champ et, à côté, dans des champs modifiables, la valeur de cette propriété.

Ces propriétés varient selon le type de données (par exemple, un champ numérique aura une

propriété « décimale » qui indique le nombre de chiffres après la virgule, que ne peut avoir

évidemment un champ de type texte).

Vous aimerez peut-être aussi