Modèle relationnel
La gestion des données
Dans toutes les applications de gestion, il faut stocker des données afin de les réutiliser à volonté sous différentes formes. La plupart des systèmes d’exploitation (MS/DOS, UNIX, VMS, GCOS...) fournissent des outils permettant ce stockage. Ces logiciels gèrent des fichiers selon des principes différents.
1. Généralités sur les fichiers
Un fichier informatique est un ensemble d’informations de même nature (texte, code exécutable, données...), portant un nom et situé sur un support physique (disque dur, disquette, bande, CD-Rom...).
Un fichier peut avoir différentes fonctions :
-
fichier programme : contient du code exécutable par le système d’exploitation.
-
fichier texte : contient des caractères ASCII.
-
bibliothèque de fonctions : contient du code exécutable pouvant être utilisé par un programme.
-
fichier périphérique : permet l’adressage des périphériques (UNIX).
-
fichier de données : permet le stockage d’informations d’une application, etc.
Les fichiers de données se distinguent par leur utilité au sein de l’application : le type de fichier. Ce type permettra de choisir à la fois le support physique du fichier et son organisation.
Types de fichiers de données
Les fichiers permanents contiennent...
Le modèle relationnel
Une base de données relationnelle est une collection de données mises en relation dans des tables logiques ; une table étant un ensemble de lignes et de colonnes.
Les systèmes de gestion de bases de données relationnelles (SGBDR ou RDBMS en anglais) gèrent indépendamment le niveau logique (objets ou entités) et le niveau physique (fichiers).
Le succès des SGBDR provient notamment de cette caractéristique. En effet, la gestion par l’utilisateur du niveau logique uniquement, donne une grande simplicité dans la gestion des données, même pour des utilisateurs non informaticiens.
1. Concepts et définitions
Le modèle relationnel repose sur des concepts de base simples (domaine, relation, attribut), auxquels s’appliquent des règles précises.
La mise en œuvre de la base est facilitée par un langage assertionnel (non procédural) simple, basé sur une logique ensembliste.
a. Domaine
C’est un ensemble de valeurs caractérisées par un nom.
Cardinal
C’est le nombre d’éléments d’un domaine.
Exemple
Le dictionnaire des données de l’analyse d’une gestion commerciale peut comporter, entre autres, des spécifications sur la gestion des états de commande ou des numéros d’ordre à afficher....
L’algèbre relationnelle
C’est une méthode d’extraction permettant la manipulation des tables et des colonnes. Son principe repose sur la création de nouvelles tables (tables résultantes) à partir des tables existantes, ces nouvelles tables devenant des objets utilisables immédiatement.
Les opérateurs de l’algèbre relationnelle permettant de créer les tables résultantes sont basés sur la théorie des ensembles.
1. Opérateurs
a. Union
L’union entre deux relations de même structure (degré et domaines) donne une table résultante de même structure ayant comme éléments l’ensemble des éléments distincts des deux relations initiales.
Exemples
Soient les tables CLIOUEST et CLICENTRE :
Clients des deux régions :
b. Intersection
L’intersection entre deux relations de même structure (degré et domaines) donne une table résultante de même structure ayant comme éléments l’ensemble des éléments communs aux deux relations initiales.
Exemple
Clients communs aux deux régions :
CLICOMMUN=CLIOUEST CLICENTRE
c. Différence
La différence entre deux relations de même structure (degré et domaines) donne une table résultante de même structure ayant comme éléments l’ensemble des éléments de la première relation qui ne sont pas dans la deuxième.
Notation : Rx = R1 - R2
Exemple
Clients gérés uniquement par la région OUEST :
CLIOUESTSEUL=CLIOUEST - CLICENTRE
d. Restriction
La restriction selon une condition produit, à partir d’une relation, une relation de même schéma n’ayant que les éléments de la relation initiale qui répondent à la condition.
Notation : Rx = σ (condition) R1
La condition s’exprime sous la forme :
[NON] [(] attribut opérateur valeur [)] [{ET/OU}condition]
opérateur |
un opérateur de comparaison : =, <>, >, <, >=, <= |
valeur |
une constante ou un autre attribut. |
Exemples
Clients de NANTES :
CLI44= σ(ADRESSE="NANTES")CLIOUEST
Articles de la famille AB :
ART1=σ(REFART>="AB" ET REFART<"AC")ARTICLES...