Concepts de base du modèle logique de données


Lors de l'élaboration d'une base de donnée, la difficulté réside dans la recherche de données élémentaires liées à un même thème.

Exemple d'une base de donnée de jeux :


Nom du jeu

Catégorie de jeu

Abalone

stratégie

Tarot

cartes

Echec

stratégie

Yams

hasard

Le nom du jeu est unique mis on retrouve plusieurs fois la même catégorie (redondance de données).


On pourrait donc envisager de dissocier ces deux types d'informations et de créer des relations entre elles :

Nom du jeu

et

Catégorie de jeu

Abalone

stratégie

Tarot

cartes

Echec

hasard

Yams




Le champ


Un champ dans une base de données est :

    • une information élémentaire présentant un intérêt dans le domaine étudié
    • une information non décomposable (un nom, un prénom ne peuvent être décomposés par exemple)
    • une information ayant une valeur et une seule
    • une information non redondante



La table


Une table dans une base de données :

    • regroupe un ensemble de champs nommés et uniques
    • a une existence propre et unique
    • comporte une population de données homogènes (par exemple : dans une ludothèque la table JEUX contient l'ensemble des jeux disponibles dans la ludothèque

On appelle enregistrement d'une table l'ensemble des valeurs d'une ligne de la table.

Chaque enregistrement d'une table doit être identifiable de manière unique.


Exemple :

Nom de la table

JEUX

Nom d'un champ

numero

Nom d'un champ

nom

Nom d'un champ

description

Nom d'un champ

contenu

Nom d'un champ

date_achat

Les enregistrements pourraient être :

JEUX

numero

nom

description

contenu

date_achat

000000101

Abalone

éjecter des billes adverse du plateau hexagonal

un plateau-28 billes

2015-01-01

000000102

Tarot

jeu de tarot

22 cartes

2010-10-10

000000103

Echec

jeu d'échec

plateau-32 pièces

2005-12-01

000000104

Yams

enchaîner les combinaisons de cinq dés 

5 dés

2011-08-05


Dans cet exemple de table de 4 enregistrements, le champ numero garanti l'identification unique de l'enregistrement.



Clé primaire (Primary Key)

La clé primaire est un champ particulier qui permet d'établir des liaisons entre tables.

Elle peut :

    • être liée à un champ naturel (nom de pays par exemple)
    • être liée à un champ artificiel (numéro de jeu par exemple)
    • être composée (liée à plusieurs champs)

Elle ne peut pas prendre deux fois la même valeur dans deux enregistrements différents.


Une table doit et ne peut posséder qu'une seule clé primaire.

Il existe trois types de clés primaires :

    • Un à plusieurs
    • Un à un
    • Plusieurs à plusieurs


Une clé primaire est automatiquement indexée.

Lien un à plusieurs


En se basant sur l'exemple ci-contre, un jeu ne correspond qu'à une seule catégorie (stratégie, carte, hasard...) mais une catégorie peut être liée à plusieurs jeux.


 Table Maître : c'est la table qui impose la donnée (dans cet exemple la table catégories).

Table Esclave : c'est elle qui reçoit la donnée (dans cet exemple la table jeux).

Clé externe ou Clé étrangère (Foreign Key) : c'est le champ qui reçoit la donnée (dans cet exemple fk_categorie)



Lien un à un


Dans une relation un à un, une seule donnée de la clé primaire est associée à une clé étrangère et à une seule.

Par exemple dans le cas d'une base de gestion d'une ludothèque, la cotisation d'un adhérent est liée à cet adhérent et à lui seul.



Lien plusieurs à plusieurs

Pour illustrer ce cas nous allons reprendre l'exemple de la base de gestion d'une ludothèque.

Un adhérent peut emprunter plusieurs jeux, et un jeu peut être emprunté par plusieurs adhérents (pas en même temps bien sûr).