Fiche de cours

Comprendre le modèle relationnel d'une base de données

Lycée   >   Terminale   >   NSI   >   Comprendre le modèle relationnel d'une base de données

  • Fiche de cours
  • Quiz et exercices
  • Vidéos et podcasts
Objectifs
  • Comprendre l’intérêt d’une base de données.
  • Comprendre le modèle relationnel et connaitre ses règles.
  • Obtenir le schéma d’une relation.
  • Construire un schéma relationnel.
Points clés
  • Une base de données est une collection de données qui vont être partagées entre plusieurs services, serveurs, utilisateurs.
  • Dans le modèle relationnel, les données sont organisées sous formes de tables, qu’on nomme des relations, qui sont associées entre elles. Le modèle relationnel doit respecter plusieurs règles.
  • Une relation est une table qui contient différents enregistrements.
  • Dans une table, il y a unicité des enregistrements, c’est-à-dire que toutes les lignes de la table doivent tous être différentes.
  • Chaque colonne de la table est appelée un attribut de la relation, parmi ceux-ci il doit y en avoir un qui permet d’identifier de manière unique un enregistrement : c’est la clé primaire.
    Une clé étrangère est quant à elle un attribut qui n’est pas primaire pour la relation étudiée mais qui est la clé primaire d’une autre relation.
  • Le schéma d’une relation définit cette relation. Il est constitué du nom de la relation, du nom de ses attributs, de la clé primaire et des clés étrangères.
  • Le schéma relationnel correspond à l'ensemble des relations présentes dans une base de données. Le schéma relationnel d’une base de données est composé de l’ensemble des schémas de relation de cette base.
1. La base de données
a. Comprendre l'intérêt d'une base de données - Exemple

Jusqu’à maintenant, on a stocké les données dans différents fichiers.

On imagine la situation suivante, dans laquelle une entreprise agroalimentaire possède différents services :

  • un service de production de légumes ;
  • un service de livraison ;
  • un service spécifique à l’exportation des légumes.

Chaque service a des données contenues dans différents fichiers. Plusieurs de ces données sont identiques d’un service à l’autre (les prix, la TVA, etc.). On parle de données dupliquées.

Si la direction décide d’augmenter ou de baisser un prix, il faudra effectuer en même temps les changements dans les fichiers de chacun des services, pour éviter des erreurs que l’on appellera des incohérences.

Si la direction décide d’ajouter un service de production de fruits ou un service « cueillette des légumes chez le producteur », cela compliquera la gestion des données et fera perdre du temps.

Pour éviter cela, au lieu d’utiliser des données dupliquées, on utilise des données partagées.

b. Principe et modèles d'une base de données
Principe
Une base de données (database en anglais) est une collection de données qui vont être partagées entre plusieurs services, serveurs, utilisateurs. Elles peuvent être de très grande taille et contenir des millions de données.
Remarque
Les premières bases de données datent des années 1960.
Différents modèles de bases de données

Il existe différents modèles de bases de données, dont notamment les suivants.

  • Base de données à modèle hiérarchique : dans ce modèle, la base de données correspond à un arbre ou à un graphe dont il faut connaitre la structure.
  • Base de données à modèle relationnel : dans ce modèle, les données de la base de données sont organisées en tables.
    Ce modèle est basé sur la théorie mathématique des ensembles.
  • Base de données à modèle objet : dans ce modèle, les données sont des classes, cela se rapproche de la programmation orientée objet.
  • Base de données à modèle NoSql : ce modèle ressemble à la structure des dictionnaires puisqu’il est fondé sur un modèle (clé ; valeur) qui permet d’être plus rapide.

On étudie ici le modèle le plus utilisé, qui est le modèle relationnel.

c. Caractéristiques d'une base de données

L’utilisation d’une base de données doit être simple puisque de nombreux utilisateurs doivent pouvoir lire et écrire des informations.

Une base de données doit pouvoir assurer, suivant le profil de l’utilisateur, l’accès ou non à certaines données.

Une base de données doit également gérer ce qu’on appelle les accès concurrents, c’est-à-dire que chacun attend son tour pour modifier ou lire les données.

Pour gérer les données, on utilise un logiciel spécifique : un Système de Gestion de Base de Données, en abrégé un SGBD.

2. Du modèle entité-association au modèle relationnel

Le modèle entité-association et le modèle relationnel sont deux types de modèle de données, qui décrivent une manière de construire une base de données.

a. Le modèle entité-association
Le modèle entité-association, ou diagramme entité-association, permet d’avoir une représentation graphique de la base de données, ce qui simplifie la compréhension.

On associe deux termes à ce modèle.

Une entité représente un fait, un objet, etc. Une entité peut avoir avoir différentes propriétés.
Exemple
L’entité LIVRE a plusieurs propriétés, comme son ISBN, son titre, le nom de son auteur ou encore l’année de sa publication.
Une association est un lien entre les entités.
Exemple
On peut définir l’association Ecrit qui permet de relier l’entité LIVRES à l’entité AUTEURS. Un auteur peut ainsi écrire de 1 à N livres tandis qu’un livre sera écrit par un unique auteur.

On modélise l’association Ecrit entre la relation LIVRES et la relation AUTEURS.

Le couple 1,N signifie que du point de vue de l’écriture il peut y avoir de 1 à N auteurs. Le couple 1,1 signifie qu’un livre est unique.
La représentation simplifiée de ce modèle est plus simple à comprendre, mais elle ne permet pas de représenter toutes les caractéristiques d’une table de données, dont notamment les liens entre les entités.
b. Le modèle relationnel
Le modèle relationnel est un modèle dans lequel les données sont organisées sous forme de tables qui sont associées entre elles. Une table correspond à une relation.

Ce modèle permet d’indiquer toutes les caractéristiques d’une table de données, avec notamment les liens entres les différentes relations.
Ce modèle est donc plus simple à implémenter (écrire en langage informatique) que le modèle entité-association.

On étudie la base de données Codd, qui est définie selon le modèle relationnel.

Cette base de données est caractérisée par différents éléments.

  • La structure : on manipule des données rangées dans des tables nommées relations.
  • Les opérateurs : il y a des opérations entre les différentes relations.
  • Les règles d’intégrité : il y a des règles à respecter pour les différentes valeurs des données.
Pour passer du modèle entité-association au modèle relationnel, on réalise plusieurs transformations : une entité devient notamment une relation et une propriété devient un attribut.
3. Le principe du modèle relationnel d'une base de données
a. Obtenir le schéma d'une relation
Vocabulaire associé au modèle relationnel
Une relation est une table qui contient des données, chaque colonne de cette table va correspondre à un attribut de celle-ci, qui permet d’identifier une information stockée dans cette relation.

Une ligne de la relation est appelée un enregistrement
ou un n-uplet.
Le schéma d’une relation
Le schéma d’une relation définit cette relation.
On appelle schéma d’une relation la formule :
NOM_RELATION(NOM_ATTRIBUT1, ...).
Le schéma d’une relation peut avoir une forme textuelle ou une forme de table.
Exemple
Si on considère un ensemble de livres, on peut construire la relation LIVRES avec comme attributs l’ISBN, le titre, le nom de l’auteur et l’année de publication.

Le schéma de cette relation est :
LIVRES(ISBN, titre, nom_auteur, annee_publication).
Règles que la relation doit respecter

Voici les règles que la relation doit respecter pour éviter des erreurs que l’on nomme incohérences dans le langage des bases de données.

Règle n° 1
Un attribut ne peut prendre à un instant donné qu’une seule et unique valeur. On dit qu’il y a atomicité de l’attribut.

Règle n° 2
Il n’y a qu’un nombre fini d’enregistrements, on ne peut par exemple pas avoir la liste des nombres entiers.

Règle n° 3 
Lorsque la base de données est définie, on définit le domaine de chacun des attributs, c’est-à-dire de quel type doivent être les données ou à quel intervalle les valeurs doivent appartenir.
On appelle cela l’intégrité de domaine.

Règle n° 4 
Les enregistrements doivent tous être différents, c’est-à-dire qu’il ne peut pas y avoir deux fois la même ligne.

Exemple
LIVRES(Identifiant numerique, Titre, Auteur, Annee)
Le schéma de cette relation peut être représenté par la table suivante.
Relation LIVRES
Attribut Identifiant
numerique
Titre Auteur Annee
Valeur 1 40 nuances de NSI PYTHON 2020
  • Chaque attribut ne peut prendre qu’une seule et unique valeur, il y a donc atomicité.
  • Le nombre d’enregistrements, c’est-à-dire le nombre de lignes de la relation (dans cet exemple le nombre de livres) vaut 1, il est donc fini. Les enregistrements sont différents puisqu’il n’y en a qu’un.
  • Pour les domaines de valeurs, l’identifiant numérique est un nombre entier, le titre et l’auteur sont une chaine de caractères et l’année est un nombre entier.
Notion de clé primaire

Chaque entité doit posséder une clé primaire.

Une clé primaire (Primary Key en anglais) est un attribut ou un ensemble d’attributs qui permettent d’identifier l’enregistrement de manière unique. 
Règle n° 5
Toute relation a une clé primaire.

Pour signaler la clé primaire dans le schéma de la relation associée, on peut souligner l’attribut qui correspond à cette clé primaire.

Exemple
Dans la relation LIVRES précédente, le seul attribut qui correspond à une clé primaire est l’identifiant numérique, puisque des livres différents peuvent avoir un même auteur, une même année de publication et même un même titre (Jill McCorkle et Kate Atkison ont publié deux livres différents qui portent le même titre : Life After Life).

On a donc le schéma de relation :
LIVRES(Identifiant numerique, Titre, Auteur, Annee).
Notion de clé étrangère
Une clé étrangère (Foreign Key en anglais) est un attribut qui n’est pas primaire pour la relation étudiée mais qui est la clé primaire d’une autre relation.

Pour signaler la clé étrangère dans le schéma de la relation associée, on peut soit placer un # devant l’attribut qui correspond à cette clé étrangère, soit surligner cet attribut en gris.

Exemple
On considère les deux schémas de relation suivants.

LIVRES(identifiant numerique, Titre, #identifiant.AUTEURS, annee)

AUTEURS(identifiant.AUTEURS, Nom AUTEURS, Prenom AUTEURS)

identifiant.AUTEURS est une clé primaire de la relation AUTEURS et une clé étrangère de la relation LIVRES.

b. Construire le schéma relationnel d'une base de données
Le schéma relationnel correspond à l'ensemble des relations présentes dans une base de données. Le schéma relationnel d’une base de données est composé de l’ensemble des schémas de relation de cette base.
Il faut donner les noms des relations, les attributs, les clés primaires soulignées et les clés étrangères précédées d’un # dans des tableaux, puis faire une flèche pour indiquer de quelle table la clé étrangère est la clé primaire.
Exemple
Voici le schéma relationnel de la base de données précédente, qui est composé des deux relations LIVRES et AUTEURS.

identifiant.AUTEURS est une clé étrangère de LIVRES, qui est la clé primaire de AUTEURS.

On pourra ajouter le domaine d’intégrité de chaque attribut.

On ajoute par exemple pour cela à chaque ligne le typage et des contraintes :

  • identifiant numérique : INT NOT NULL indiquera que c’est un entier non nul.
  • Titre : VARCHAR(50) indiquera que c’est une chaine d’au plus 50 caractères.
Remarque
Il existe des règles de normalisation qui aident à construire une base de données sans anomalies, mais c’est hors programme.

Évalue ce cours !

 

Des quiz et exercices pour mieux assimiler sa leçon

La plateforme de soutien scolaire en ligne myMaxicours propose des quiz et exercices en accompagnement de chaque fiche de cours. Les exercices permettent de vérifier si la leçon est bien comprise ou s’il reste encore des notions à revoir.

S’abonner

 

Des exercices variés pour ne pas s’ennuyer

Les exercices se déclinent sous toutes leurs formes sur myMaxicours ! Selon la matière et la classe étudiées, retrouvez des dictées, des mots à relier ou encore des phrases à compléter, mais aussi des textes à trous et bien d’autres formats !

Dans les classes de primaire, l’accent est mis sur des exercices illustrés très ludiques pour motiver les plus jeunes.

S’abonner

 

Des quiz pour une évaluation en direct

Les quiz et exercices permettent d’avoir un retour immédiat sur la bonne compréhension du cours. Une fois toutes les réponses communiquées, le résultat s’affiche à l’écran et permet à l’élève de se situer immédiatement.

myMaxicours offre des solutions efficaces de révision grâce aux fiches de cours et aux exercices associés. L’élève se rassure pour le prochain examen en testant ses connaissances au préalable.

S’abonner

Des vidéos et des podcasts pour apprendre différemment

Certains élèves ont une mémoire visuelle quand d’autres ont plutôt une mémoire auditive. myMaxicours s’adapte à tous les enfants et adolescents pour leur proposer un apprentissage serein et efficace.

Découvrez de nombreuses vidéos et podcasts en complément des fiches de cours et des exercices pour une année scolaire au top !

S’abonner

 

Des podcasts pour les révisions

La plateforme de soutien scolaire en ligne myMaxicours propose des podcasts de révision pour toutes les classes à examen : troisième, première et terminale.

Les ados peuvent écouter les différents cours afin de mieux les mémoriser en préparation de leurs examens. Des fiches de cours de différentes matières sont disponibles en podcasts ainsi qu’une préparation au grand oral avec de nombreux conseils pratiques.

S’abonner

 

Des vidéos de cours pour comprendre en image

Des vidéos de cours illustrent les notions principales à retenir et complètent les fiches de cours. De quoi réviser sa prochaine évaluation ou son prochain examen en toute confiance !

S’abonner

Découvrez le soutien scolaire en ligne avec myMaxicours

Plongez dans l'univers de myMaxicours et découvrez une approche innovante du soutien scolaire en ligne, conçue pour captiver et éduquer les élèves de CP à la terminale. Notre plateforme se distingue par une riche sélection de contenus interactifs et ludiques, élaborés pour stimuler la concentration et la motivation à travers des parcours d'apprentissage adaptés à chaque tranche d'âge. Chez myMaxicours, nous croyons en une éducation où chaque élève trouve sa place, progresse à son rythme et développe sa confiance en soi dans un environnement bienveillant.

Profitez d'un accès direct à nos Profs en ligne pour une assistance personnalisée, ou explorez nos exercices et corrigés pour renforcer vos connaissances. Notre assistance scolaire en ligne est conçue pour vous accompagner à chaque étape de votre parcours éducatif, tandis que nos vidéos et fiches de cours offrent des explications claires et concises sur une multitude de sujets. Avec myMaxicours, avancez sereinement sur le chemin de la réussite scolaire, armé des meilleurs outils et du soutien de professionnels dédiés à votre épanouissement académique.

Fiches de cours les plus recherchées

NSI

Utiliser l'algèbre relationnel dans une base de données relationnelle

NSI

Repérer des anomalies dans une base de données relationnelle

NSI

Introduire la notion de système de gestion de base de données relationnelle

NSI

Découvrir le langage SQL

NSI

Administrer une base de données avec le langage SQL

NSI

Construire des requêtes d'interrogation à l'aide des clauses du langage SQL

NSI

Construire des requêtes d'insertion et de mise à jour à l'aide du langage SQL

NSI

Découvrir le système sur une puce

NSI

Comprendre la gestion de plusieurs processus

NSI

Comprendre la notion d'interblocage de processus