Vous êtes sur la page 1sur 11

Université Abderrahmane Mira - Bejaia Spécialité : Systèmes d'Information

Faculté des Sciences Exactes Niveau : L3 - Recrutement National


Département d'informatique Module : Bases de données

Chapitre 1 – Introduction aux bases de données

1. Les bases de données


1.1. Définition
Une base de données est un ensemble structuré d'informations qui désignent des
objets (entités) du monde réel.
Les bases de données sont conçues pour stocker et manipuler de gros volumes d'informations,
pour en faciliter la gestion, ces informations doivent être structurées, cohérentes, non
redondantes et accessibles par plusieurs utilisateurs de manière sélective. [KHA 2019]
Les entités d'une base de données sont des objets de la vraie vie, telles que les étudiants, les
livres, les véhicules, etc. Chaque entité possède des propriétés ou caractéristiques.
Par exemple : l'entité " Etudiant" possède une liste de caractéristiques : un matricule, nom,
prénom, date de naissance, adresse.

Un livre possède comme propriétés : Un numéro, titre, auteur, année de parution, ISBN.

Exemples de bases de données


 Gestion d'étudiants et de personnel de l'université,
 Gestion d'une bibliothèque,
 Gestion d'un hôpital,…

1.2. Modèles de données


Il existe différentes structures à adopter pour modéliser une base de données, parmi
les modèles les plus utilisés :

1.2.1. Le modèle hiérarchique


Le modèle hiérarchique décompose les données en enregistrements dans une
structure arborescente. Chaque enregistrement, qui est une collection de propriétés ou
d'attributs, ne possède qu'un seul prédécesseur.

1
Université Abderrahmane Mira - Bejaia Spécialité : Systèmes d'Information
Faculté des Sciences Exactes Niveau : L3 - Recrutement National
Département d'informatique Module : Bases de données

Le modèle hiérarchique peut représenter des associations père-fils entre entités dans un
schéma Entité/Association. L'inconvénient d'un modèle hiérarchique est la redondance de
données, un nœud peut être répété. Un autre inconvénient est l'accès aux données, où tout
l'arbre doit être parcouru de nœuds pères en nœuds fils pour atteindre la donnée voulue.

Exemple : Soit le schéma d'E/A suivant : Un enseignant ne travaille que dans un et un seul
département et un département emploie un ou plusieurs enseignants.

Enseignant Département
N°Ens 1, 1 N°Département
1, n
Nom_Ens Travaille Nom_Département
Prénom_Ens

La représentation du schéma Entité/Association dans un modèle hiérarchique est décrite dans


la figure suivante : on remarque que chaque enregistrement ne possède qu'un seul
enregistrement comme père.

Le premier nœud de la structure est une racine virtuelle qui ne désigne aucun enregistrement.

FSE103 Mathématiques FSE101 Informatique FSE102 R.Opérationnelle

01 MADI Samy 02 SAIDI Youba 03 LOUNIS Sarah 04 SALMI Imene

Figure 1. Exemple d'une base de données avec le modèle hiérarchique

2
Université Abderrahmane Mira - Bejaia Spécialité : Systèmes d'Information
Faculté des Sciences Exactes Niveau : L3 - Recrutement National
Département d'informatique Module : Bases de données

1.2.2. Le modèle réseau


Comme le modèle hiérarchique, il fait partie de la première génération de modèles
pour les bases de données. Il permet d’établir des liaisons entre enregistrements dans une
structure de graphe. L’accès aux données se fait alors par des chemins divers. Les modèles
réseau permettent de modéliser des associations n-aires. Il s'agit d'une amélioration du
modèle hiérarchique.
Exemple : Un enseignant travaille dans un ou plusieurs départements et un département
emploie un ou plusieurs enseignants.

Enseignant Département
N°Ens 1, n 1, n
N°Département
Travaille
Nom_Ens Nom_Département
Prénom_Ens

La représentation du schéma Entité/Association dans un modèle réseau est décrite dans la figure
suivante : on remarque que chaque enregistrement peut avoir plusieurs prédécesseurs.

01 MADI Samy 02 SAIDI Youba 03 LOUNIS Sarah

FSE103 Mathématiques FSE101 Informatique Tec201 Physique FSE102 R.Opérationnelle

Figure 2. Exemple d'une base de données avec le modèle réseau

3
Université Abderrahmane Mira - Bejaia Spécialité : Systèmes d'Information
Faculté des Sciences Exactes Niveau : L3 - Recrutement National
Département d'informatique Module : Bases de données

1.2.3. Le modèle relationnel


Le modèle relationnel fait partie des modèles de deuxième génération. Il repose sur
les mathématiques puisqu'il utilise une algèbre relationnelle entre les structures de la base de
données. Les données sont stockées sous formes de tableaux à deux dimensions appelés
Tables ou relations, les colonnes représentent les attributs et les lignes représentent les
valeurs de ces attributs qu'on appelle tuple. Le modèle relationnel est le plus utilisé pour sa
facilité d'accès aux données et son indépendance des supports de stockage.
L'exemple suivant montre le modèle relationnel correspondant au schéma E/A.
Les relations sont de la forme :

ENSEIGNANTS (N° ENS, Nom_Ens, Prénom_Ens, Adresse)


DEPARTEMENTS (N° Département, Nom_Département)
TRAVAILLER (#N°_Ens,#N°Département)

ENSEIGNANTS
N°ENS Nom_Ens Prénom_Ens Adresse
01 MADI Samy Béjaia
02 SAIDI Youba Alger
03 LOUNIS Sarah Bejaia

TRAVAILLER
DEPARTEMENTS
N° ENS N°Département
N° Département Nom département
01 FSE103
FSE102 Recherche opérationnelle
01 FSE101
FSE103 Mathématiques
02 TEC201
FSE101 Informatique
02 FSE101
TEC201 Physique
03 FSE102

Table 1. Exemple d'une base de données relationnelle

4
Université Abderrahmane Mira - Bejaia Spécialité : Systèmes d'Information
Faculté des Sciences Exactes Niveau : L3 - Recrutement National
Département d'informatique Module : Bases de données

1.3. Cycle de vie d'une base de données


Lorsqu'on décide de créer une base de données, on commence par analyser les
données qui doivent y figurer, selon le domaine d'application. Par exemple, dans le cas d'une
base de données qui gère un hôpital, nous devons avoir toutes les informations qui
concernent le personnel, les médecins, les patients, les services, les salles,…etc. Cette phase
s'appelle la phase de conception. On procède généralement à modéliser ces données par des
entités chacune possédant une liste de propriétés, en fonction de leur signification dans le
monde réel, avec des liens qui relient ces entités appelés associations.
Une fois la base de données conçue, on procède à la traduction de ce modèle conceptuel en
modèle logique pour pouvoir aider le système à l'interpréter dans la phase d'implémentation.
La modélisation logique consiste à traduire un modèle conceptuel en modèle relationnel, sous
forme de tables relationnelles. La phase d'implémentation consiste à introduire le modèle
relationnel dans le SGBD (Système de Gestion de Bases de données). Avec le SGBD, l'utilisateur
sera en mesure de créer la base de données avec toutes ses tables et structures, vient ensuite
la phase d'utilisation, où l'utilisateur pourra manipuler les données : les mettre à jour, les
supprimer mais aussi interroger sa base de données via des requêtes.

La figure suivante montre les phases de création d'une base de données.

Analyse
Domaine
d’application

Modélise
Elaboration du modèle E/A
Conception
Modèle relationnel

Implémentation sur le SGBDR Implémentation

Utilisation
Figure 3. Cycle de vie d'une base de données

5
Université Abderrahmane Mira - Bejaia Spécialité : Systèmes d'Information
Faculté des Sciences Exactes Niveau : L3 - Recrutement National
Département d'informatique Module : Bases de données

2. Les systèmes de gestion de bases de données (SGBD)


2.1. Définition
Un SGBD est un ensemble de programmes ou logiciel permettant la gestion et l’accès
à une base de données. Il s'agit d'un intermédiaire entre les utilisateurs et les fichiers
physiques. Il est caractérisé par deux aspects :
 La description de données : permet de définir la structure et les types de données, les
contraintes d’intégrité sur les données et les autorisations d’accès.
 La manipulation de données : permet d’effectuer des insertions, des mises à jour
(modification, suppression) et des interrogations sur la base de données.

2.2. Objectifs d'un SGBD


 Partager les données entre les utilisateurs.
 Contrôler l’accès à la base de données et assurer sa sécurité.
 Assurer la cohérence et l’intégrité des données avec les contraintes d'intégrité.
 Possibilité de restauration du système en cas de panne.
 Non-redondance de données, chaque donnée ne sera représentée qu'une fois dans la
base.
 Indépendance physique (Les structures de stockage peuvent être modifiées).
 Indépendance logique (Un même ensemble de données peut être vu différemment par
plusieurs utilisateurs).

2.3. Architecture d'un SGBD

La plupart des architectures de SGBD suivent la norme ANSI/SPARC qui décrit les SGBD sur
plusieurs niveaux d'abstraction :

1. Niveau externe : définit les différentes vues des utilisateurs et chaque schéma externe
donne une vue sur le schéma conceptuel à une classe d’utilisateurs.

6
Université Abderrahmane Mira - Bejaia Spécialité : Systèmes d'Information
Faculté des Sciences Exactes Niveau : L3 - Recrutement National
Département d'informatique Module : Bases de données

2. Niveau logique (conceptuel) : Décrit la structure de la BD globalement à tous les


utilisateurs. Le schéma conceptuel est produit par une analyse de l’application à
modéliser et par intégration des différentes vues utilisateurs.
3. Niveau interne : définit les structures de stockage des données et les fonctions d'accès
à la base de données.
L'architecture d'un SGBD est constituée de trois composants :
1. Le navigateur : Il s'agit du client, il permet à l'utilisateur de visualiser et d'interagir
avec l'information.
2. Le serveur d'application : il s'agit du serveur web qui exécute des programmes pour
le compte de clients, avec de langages écrits en PHP, C++, Java, Python,…
3. Le serveur de données : contient le SGBD qui interagit avec la base de données via
des requêtes SQL.
La figure suivante illustre une architecture à 3 tiers d'un SGBD

Figure 4. Architecture 3-tiers d'un système de gestion de bases de données

Exemples de SGBD
 Oracle
 MySQL
 SQL Server
 Postgres
 …

7
Université Abderrahmane Mira - Bejaia Spécialité : Systèmes d'Information
Faculté des Sciences Exactes Niveau : L3 - Recrutement National
Département d'informatique Module : Bases de données

3. Le modèle relationnel
Le modèle relationnel repose sur la notion de tables ou relations pour modéliser les
différentes données d'une base. Il permet un accès facile et rapide aux données de par la
structuration de celles-ci. Il évite la redondance et assure la cohérence de données avec les
contraintes d’intégrité référentielles. Les SGBD relationnels se basent sur le modèle relationnel
et sont couramment utilisés actuellement.

3.1. Notions et concepts


L'attribut
Il s'agit du nom d’une information stockée. Il représente la propriété de l’entité à modéliser (
nom, prénom, adresse, matricule,…).
Le domaine
C'est l’ensemble de valeurs que peut prendre un attribut (par exemple : l’âge doit être un
entier naturel (le nom est une chaîne de caractères, le numéro de téléphone est un entier).

La relation
C’est la structure principale du modèle relationnel, représentée par une table à deux
dimensions (les attributs et les tuples). Une base de données est constituée de plusieurs tables
(relations).

Schéma d'une relation


Le schéma d'une relation R est de la forme :
R(Attribut1 : Domaine1, Attribut 2 : Domaine2 , … , Attribut n : Domainen )

Où R est le nom de la relation (table).


Attribut i est le nom du ième attribut de R .
Domainei est le domaine du ième attribut de R.

8
Université Abderrahmane Mira - Bejaia Spécialité : Systèmes d'Information
Faculté des Sciences Exactes Niveau : L3 - Recrutement National
Département d'informatique Module : Bases de données

Exemple :
Soit le schéma de relation ETUDIANTS

ETUDIANTS ( Identifiant: chaîne de caractères, Nom : chaîne de caractères, Prénom : chaîne


de caractères, Date de naissance : date, Adresse : chaîne de caractères, Téléphone : entier).
Degré d’une relation : Le nombre d’attributs qu’elle contient.

Cardinalité d’une relation : Le nombre de tuples qu’elle contient.

Extension (instanciation) d’une relation : L’ensemble des tuples qu’elle contient à un


moment donné.

Exemple : Le tableau suivant montre l'extension du schéma relationnel ETUDIANTS.

ETUDIANTS
identifiant Nom Prénom Date de naissance Adresse Téléphone

182020MI SADI Nassim 1992.01.20 Bejaia 5557856

202020MI ALI Nadia 1991.03.25 Sétif 5552526

222020MI MOULOUD Leila 1993.08.14 Bejaia 5551213

 Le degré de la relation ETUDIANTS = 6 (le nombre d'attributs qu'elle contient :


Identifiant, nom, prénom, adresse, date de naissance, téléphone.
 La cardinalité de la relation ETUDIANTS = 3 (le nombre de tuples qu'elle contient :
('182020MI', 'SADI', 'Nassim', '1992.01.20', 'Bejaia', 5557856)
('202020MI', 'ALI', 'Nadia', '1991.03.25', 'Sétif', 5552526)
('222020MI', 'MOULOUD', 'Leila', '1993.08.14', 'Bejaia', 5551213)

9
Université Abderrahmane Mira - Bejaia Spécialité : Systèmes d'Information
Faculté des Sciences Exactes Niveau : L3 - Recrutement National
Département d'informatique Module : Bases de données

Clés étrangères et contraintes d'intégrité référentielle


Par définition, une clé de relation est un sous-ensemble minimal d’attributs
appartenant au schéma de la relation et dont la connaissance des valeurs permet d’identifier
un tuple unique de la relation considérée [GAR 2003].
Une clé étrangère est un groupe de colonnes d'une table R tel qu'il existe, à tout moment,
dans une table T, une ligne dont l'identifiant a pour valeur(s) celle(s) de ce groupe. La valeur
de la clé étrangère dans R sert à référencer une ligne de la table T.
Contrainte d'intégrité référentielle : il faut que chaque clé étrangère désigne une ligne
existante de la table cible.

Schéma d'une base de données relationnelle


ETUDIANTS (Matricule, nom, prénom, datedenaiss, adresse, #CodeFilière).
FILIÈRES (CodeFilière, nomFilière).
MODULES (CodeModule, intitulé).
SUIVRE (#Matricule,#CodeModule).
Dans la table ETUDIANTS, la clé étrangère CodeFilière fait référence à la table FILIERES.
La clé étrangère est donc considérée comme le lien entre deux tables.

Remarque : le nom de la colonne CodeFilière dans la table ETUDIANTS peut avoir un nom
différent de la clé primaire à laquelle il fait référence dans la table FILIERES.
ETUDIANTS (Matricule, nom, prénom, datedenaiss, adresse, #Filière).
Dans ce cas, le nom de l'attribut Filière fait toujours référence à CodeFilière de la table
FILIERES.

10
Université Abderrahmane Mira - Bejaia Spécialité : Systèmes d'Information
Faculté des Sciences Exactes Niveau : L3 - Recrutement National
Département d'informatique Module : Bases de données

11

Vous aimerez peut-être aussi