Vous êtes sur la page 1sur 5

Les bases de Données

I-Notion de base de données


Collection de données structurées, complètes, non redondantes et persistantes relatives

à un ou plusieurs domaines du monde réel.

Exemple : Une base données agence de location de voitures devra regrouper toutes les

données concernant les voitures (immatriculation, marque, modèle, tarif, durée de

location, état, disponibilité,….) ainsi que les données concernant les clients (code, nom,

prénom, adresse, tel, e-mail,…..). En plus de ces données, il existe un certain nombre de

règles à respecter comme :

a-Une voiture ne peut être louée que par une seule personne à la fois

b-La durée maximale de location est de 1 mois

c-Une voiture est supprimée de la base après 3 ans

d-Un client peut louer plusieurs voitures

e-L’age minimum d’un client doit être de 20 ans et doit avoir son permis depuis au moins

2 ans

f-etc

Toutes ces règles citées vont permettre de définir les traitements et les contraintes qu’on

pourra appliquer sur notre base de données.


II-Notion de système de gestion de base de données (SGBD)
Logiciel permettant à l’utilisateur l’accès et la gestion des données (description,

modification, suppression, ajout, recherche, administration,….) d’une base de données

de manière abstraite c’est-à-dire sans tenir compte de leur façon d’implémentation. En

d’autres termes pendant l’étape de conception d’une base de données, on ne donne

aucune importance à la partie matérielle qu’on va utiliser (type d’ordinateur, type du

système d’exploitation, type du SGBD,…..)

Application 1 : gestion
du stock

Application 2 : gestion du BD
SGBD
personnel

Application 3 : gestion
des fournisseurs

Les applications 1, 2 et 3 seront représentées sous forme d’interface afin de

faciliter la gestion des données aux utilisateurs. On remarque alors que le SGBD aura le

rôle de lien entre les utilisateurs et la base de données. C’est donc un programme qui va

permettre la gestion des données suites aux besoins des utilisateurs. On remarque aussi

que toutes les données utilisées par l’entreprise sont regroupées afin d’éviter la

redondance des données (répétition) et l’incohérence des informations (toutes les

données seront vues de la même manière par les utilisateurs en fonction de leurs droits

d’accès qui seront gérer par le SGBD).


III-Principe d’une base de données relationnelle

Tout d’abord, il faut signaler que nous travaillons cette année sur les bases de données

relationnelles. Il existe d’autres types de base de données (orientée objet,

hiérarchique,…).

Le modèle relationnel à été proposé par le mathématicien CODD en 1970. Il est considéré

comme le plus simple et le plus élégant. Une base de données relationnelle est vue par

ses utilisateurs comme une collection de tables reliées entre elles par des associations

(liens). Une base de données relationnelle doit respecter les principes suivants :

1-Une association peut devenir une table (cardinalité n-n)

2-En colonne, on porte les attributs qui doivent être atomiques (non

décomposables)Exp : soit l’attribut adresse qui contient 15 Rue de la liberté 5099 Lamta.

Cet attribut n’est pas atomique car on peut le décomposer en Numéro de la rue, nom de

la rue, code postal et ville. Noter juste que pour votre niveau on pourra considérer

l’adresse comme un attribut atomique afin de faciliter les exercices.

3-En ligne, on aura les enregistrements c’est-à-dire les valeurs des attributs qu’on appelle

aussi occurrence ou tuples ou n-uplets.

4-Les tuples doivent être différents, la duplication est interdite c’est-à-dire que vous ne

pourrez jamais trouver dans une table deux enregistrements (deux lignes) identiques.

Lorsque vous allez ajouter de nouvelles valeurs dans votre table, le SGBD devra vérifier si

ces valeurs se trouvent déjà dans la table. Si c’est le cas un message d’erreur sera afficher

sur votre écran vous indiquant que l’enregistrement que vous venez de saisir existe déjà.
5-Pour chaque attribut, on devra lui définir un domaine c’est-à-dire un type : texte,

numérique, date/heure, oui/non, numéro automatique,…..

6-chaque table doit obligatoirement posséder une clé primaire qui sera composé d’un ou

de plusieurs attributs. Cette clé primaire va servir à identifier de manière unique un

enregistrement (une ligne) de la table. C’est à dire que la connaissance de la valeur de la

clé primaire va me permettre d’identifier la ligne correspondante.

Prenons un exemple

Soit la table suivante : Client (CIN, nom, prenom, adresse)

CIN Nom Prénom adresse

01212121 Guizani Salah Beja

06525485 Abdallah Ahmed Tunis

04859652 Bahri Fatma Beja

06962548 Sta Salah Sousse

09854741 Ferchichi Ali Monastir

05855521 Guizani Najah Beja

Comment choisir la clé primaire de la table client ?

Quel est l’attribut qui permet d’identifier une seule ligne lorsqu’on connaît sa valeur ?

Le nom : il ne peut pas être une clé primaire car lorsqu’on dit GUIZANI, on aura deux

lignes (la première et la dernière)

Le prénom : même chose car lorsqu’on dit salah, on aura aussi 2 lignes (la 1ère et la 4ème)

L’adresse : même chose car lorsqu’on dit Béja, on aura alors 3 lignes (1, 3 ,6)
Donc le seul attribut capable d’être une clé primaire est le CIN car il est unique et

lorsqu’on connait la valeur de la CIN il nous sera possible d’identifier clairement et de

façon unique la ligne de la table.

7-Une association entre 2 tables donnera naissance à un nouvel attribut qu’on appelle clé

étrangère et qui aura surement le rôle d’une clé primaire dans une autre table afin de

créer le lien entre ces deux tables. Vous devez prendre en considération que ces deux

attributs (clé primaire et clé étrangère seront de même type et auront les mêmes

valeurs)

IV-Représentation d’une base de données relationnelle


1-Représentation textuelle
Article (CodeA, désignation, qte-stk)
Client (CodeCLT, nom, prénom, adresse)
Facture (CodeF, DateF, montant, CodeCLT#)
Ligne-Facture (CodeF#, CodeA, prix, Qte)
Le symbole # signifie clé étrangère
Les attributs soulignés représentent des clés primaires

2-Représentation graphique

Vous aimerez peut-être aussi