Bases de Données Relationnelles Et SQL

Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Vous êtes sur la page 1sur 18

Bases de données relationnelles et SQL

I- Introduction

I-1- Définition

Une base de donnée est un ensemble de données organisées, structurées de manière à permettre leur stockage, leur gestion,
accès et leur manipulation efficace.
I-2- Historique
L’histoire des bases de données remonte aux années 1960 avec l’apparition des bases de données réseau.
Dans les années 1980, ce sont les bases de données orientées objet qui font leur apparition.
Aujourd’hui, les bases de données prédominantes sont : SQL, les No SQL et les Cloud
I-3 Les différentes sortes de bases de données
I-3-1 Les bases de données hiérarchiques
Elles comptent parmi les plus anciennes
I-3-2-Les BDD réseau
Elles sont utilisées au sein des entreprises de e-commerce
I-3-3- Les BDD textes ou encore Flat File
Elles se présentent sous la forme d’un fichier (table ou fichier.txt ou fichier.ini)
I-3-4- Les BDD relationnelles (SQL)
Elles ont vu le jour en 1970 par Edgar Frank CODD, le père du relationnel. Elles sont constituées d’un ensemble de tableaux au
sein duquel les données sont organisées par catégorie. L’application standard pour les BDD est le SQL (Structured Quiery
Language).
I-3-5- Les BDD distribuées
Ce sont des BDD dont certaines portions sont stockées à certains endroits physiques. Le traitement est réparti pour répliquer
entre les différents points d’un réseau.
I-3-6- Les BDD Cloud
Elles sont optimisées ou directement crées pour les environnements virtualisés. Il peut s’agir d’un cloud public, privé, ou
hybride.
I-3-7- Le s BDD No SQL
Elles sont utilisées pour les bases de données distribuées. Elles sont beaucoup plus utilisées pour le BIG DATA
I-3-8- Les BDD orientées objet
Les objets crées avec certains langages de POO sont généralement stockés sur des bdd relationnelles
I-3-9- Les bdd graphe
C’est un type de bdd No Sql utilisant la théorie des graphes pur stocker, cartographier et effectuer des requêtes sur les relations
entre les données. Elles sont combinées électroniquement et on les appelle les data Ware House.
I-4-Fonctionnement des bdd
Les bdd sont stockées sous forme de fichiers ou sous forme d’ensemble de fichiers sur disque magnétiques, disques optiques ou
tout autre équipement de stockage. Les bdd traditionnelles sont organisées par champs. Le champ étant une seule pièce
d’information. Un enregistrement est un ensemble de champs. Un fichier est une collection d’enregistrements.
La faculté de consulter ou de modifier une bdd est conférée aux divers utilisateurs par un database Manager. Elles sont
principalement présentes au sein des systèmes mainframe (par exemple IBM AS/400, qui sont de gros serveurs).
II- Système de gestion des bdd
II-1- Principe de fonctionnement
La gestion et l’accès à la bdd sont assurés par un ensemble de programmes qui constituent le système de gestion de bdd
(SGBD).
UN SGBD va permettre l’ajout, la modification, et la recherche de données. Actuellement, la plupart des SGBD sont stockées
sur des serveurs. On parle des modèles clients/ serveurs parce que le résultat est toujours retourné au client.
II-2- Objectifs
Ces objectifs sont les suivants :
a- Indépendance physique
La manière dont les données sont définies doit être indépendante des structures.

b- Indépendance logique
Un même ensemble de données peut être différemment vu par des utilisateurs différents. On les intègre dans une
vision globale.

c- Accès aux données


Cela se fait par l’intermédiaire d’un langage de manipulation de données (LMD)

d- Administration centralisée des données


Les données doivent être centralisées dans un réservoir commun, unique à toutes les applications.
e- Non redondance des données, cohérence et partage des données
Chaque donnée ne doit être présente qu’une seule fois dans la base. Les contraintes d’intégrité sont décrites dans le
langage de description des données (LDD)
Plusieurs personnes peuvent accéder au même moment à la bdd, de manière transparente. Les données doivent être
protégées contre les accès non autorisés. Il faut pouvoir récupérer une base lorsqu’une panne survient.
II-3- Niveau de description des données ANSI/ SPARK
Pour atteindre un certains nombres d’objectifs, 03 niveaux ont été définis par la norme ANSI/ SPARK
II-3-1- Le niveau externe : qui correspond à la prospection de tout ou une partie de la base par un groupe d’utilisateurs
indépendants des autres. Le niveau externe assure l’analyse et l’interprétation des données en primitive du plus bas niveau et
se charge éventuellement de convertir les données brutes issues de la réponse à la requête dans un format souhaité par
l’utilisateur.
II-3-2- Le niveau conceptuel : il décrit la structure des bdd, leurs propriétés. Il en découle le schéma conceptuel.
II-3-3-Le niveau physique : Il s’appuie sur le système de gestion du fichier, la politique de stockage, ainsi que le déplacement
des données.
II-3-4- Quelques SGBD relationnelles

 PostgreSQL
 MS SQL server
 Oracle
 Maria bd
 MySQL
 Sysbase
 Informix
 DB 2

III- Modèles entités association de bases de données.


III-1- Introduction
III-1-1- Modélisation préalable
Le modèle entité-association constitue le premier et le plus courant permettant de modéliser. Ce modèle permet une
description naturelle d’un nombre réel à partir du nombre conceptuel d’entité et d’associations basés sur la théorie des
ensemble et des relations.
III-1-2- Rappels de MERISE (Méthode D’Étude Et de Réalisation Informatique a Système d’Entreprise) :
Est le langage de spécialisation le plus rependu de la communauté de l’informatique, des systèmes d’information et plus
particulièrement dans le domaine des bases de données. Reconnu comme standard, Merise est un outil de communication.
Une des conceptions clés de la méthode Merise est la séparation des données et des traitements.
L’expression conceptuelle des données conduit à une mobilisation des bdd en entités et associations
III-1-3- Le niveau de représentation des données
Merise propose une démarche dite par niveaux. Les préoccupations de mobilisation sont hiérarchisées et de trois ordres : la
conception, l’organisation et la technique. Ces niveaux de mobilisation sont donnés dans une double approche (données-
traitement). Ces trois niveaux de représentation sont : le niveau conceptuel, le niveau logique et le niveau physique.
III-1-3-1-Le niveau conceptuel
Le modèle conceptuel de données (MCD) décrit les entités du monde réel en terme d’objets, de propriétés et de relations,
indépendamment de toute technique, d’organisation et d’implémentation des données. Ce modèle se concrétise par un
schéma (entité-association) représentant la structure du système d’information du point de vue des données.
III-1-3-2- Le niveau logique
Le modèle logique des données (MLD) précise le MCD par des choix organisationnels des données. Il s’agit d’une transcription
(encore appelée dérivation) du MCD dans un formalisme adapté à une implémentation antérieure au niveau physique
III-1-3-3- Le niveau physique
Le modèle physique des données permet d’établir de manière concrète la manière dont le système sera mis en place ()
III-2-Elements constitutifs du modèle entité-association
Elle s’appuie sur la représentation du concept de base suivant :
 L’objet ou entité :
 L’association
 La propriété
L’objet est une entité ayant une existence propre. L’association est un lien entre objets sans existence propre. La propriété est
la plus petite données d’information décrivant un objet ou une association.
Une entité désigne un ensemble d’objets qui possèdent une nature sémantique et des propriétés communes.
Des personnes, des livres, des voitures, des articles sont des exemples d’entités.
III-2- 1-Représentation

Nom de l’entité III-2- 2-


Propriété 1
*
*
Propriété n

Attribut, propriétés, valeur


Une propriété est une caractéristique associée à une entité ou à une association : exemple, le nom d’un étudiant, le titre d’un
livre, la puissance d’une voiture.
Remarques :
 Au niveau d’une entité, chaque propriété possède un domaine qui définit l’ensemble des valeurs possibles qui peuvent
être choisies ou lues (chaîne de caractère, numérique, date, booléen…)
 Une propriété ne peut en aucun cas être partagé par plusieurs entités.
 Une propriété est une donnée élémentaire, ce qui exclut les données calculées ou dérivées.
 Une entité et ses propriétés doivent être cohérentes entre eux, c’est-à-dire ne traiter que d’un seul sujet.
III-2-3- Identifiant ou clé
L’identifiant d’une entité est constitué par une ou plusieurs de ses propriétés qui doivent avoir une valeur unique.
Généralement l’identifiant est un référent, un code ou un numéro.
Étudiant
NumMat
Nom
Prénom
Adresse

III-2-4- Association
C’est un lien entre deux entités. Elle désigne un ensemble de relations qui possèdent les mêmes caractéristiques. Les
associations sont définies à l’aide de propriétés qui prennent leurs valeurs dans le contenu des associations, et donc lient les
entités.
NB : Une propriété peut être classée dans une association, uniquement lorsqu’elle dépend de toutes les entités liées par cette
association. On parle alors de propriétés portées ou d’associations porteuses.

Étudiant Livre
NumMat NumLivre
Nom Emprunter Titre
Prénom Auteur
Adresse Propriétés Editeur
(0,1) (0,n)
Remarque : Une association est binaire lorsqu’elle lie deux entités, ternaire si elle en lie trois, et quaternaire si elle en lie
quatre.
Elle est dite porteuse si elle possède une ou plusieurs propriétés
III-2-5-Les cardinalités
Elle est représentée par une paire de chiffres. On en distingue quatre types.
0,1 Au plus un

1,1 Un et un seul

0,n Aucun ou plusieurs

1,n Au moins un

Remarque : L’expression de la cardinalité est obligatoire pour chaque partie d’une association.

Une cardinalité minimale est toujours 0 ou 1, et une cardinalité maximale est toujours 1 ou n.

Pour justifier une cardinalité, elle se réalise entre une entité et une association :

 En constituant une simple phrase dont le sujet est le nom de l’entité, précédé de l’article indéfini « un/une ». Le
complément de la phrase est le nom de l’autre entité précédé de la signification des types de cardinalités à
justifier. Entre le sujet et sa signification, doit être placé le verbe (nom de l’association ou un synonyme
conjugué au présent de l’indicatif à la forme passive ou active)
 Lorsque la phrase construite n’a pas de sens, elle pourra être reconstruite en utilisant à la place du sujet, un
groupe nominal constitué des mots « sur, dans, a », suivi du nom de l’entité. Pour une meilleure visibilité, cette
justification se fait à l’aide du tableau ci-après.

Entité Association Cardinalité Justification

IV- Normalisation des entités et associations

IV-1-Introduction

Il existe cinq formes normales principales et deux extensions. Les formes normales permettent d’éviter la redondance,
une source d’anomalies au niveau des bdd. Une entité ou une association en forme normale de niveau n est
automatiquement en forme normale de niveau n-1.

Une modélisation rigoureuse permet généralement d’aboutir directement à des entités et associations en forme
normale de Boyce Co–––dd

IV-2- 1ere forme normale (1FN)

PAVILLON PAVILLON

NoPavillon NoPavillon
Adresse Adresse
1FN
Occupant Code postal

Ville
0,n
Occuper

1,1
PERSONNE

NoPavillon

Code postal

Ville

Une entité ou une association est en 1FN si tous ses attributs sont élémentaires, c’est-à-dire non décomposables

IV-3- 2ème forme normale (2FN)

On suppose qu’un même produit peut être fourni par différents fournisseurs, et qu’un fournisseur peut fournir
différents produits. Une entité ou une association est en 2FN si et seulement si elle est en 1FN et si tout attribut
n’appartenant pas à la clé dépend de la totalité de cette clé.

ARTICLE
ARTICLE
2FN NoArticle
Produit
Produit
Fournisseur
Fournisseur
AdresseFournissseur
AdresseFournissseur

IV-4- Troisième forme normale


ARTICLE
ARTICLE
3FN NoArticle
NoArticle
Produit
Produit

Fournisseur

AdresseFournissseur
Fournir
FOURNISSEUR

NoFournisseur

NomFournisseur

Dans notre exemple, l’attribut ADRESSE dépend de l’attribut FOURNISSEUR.

Une entité ou association est en 3FN si et seulement si elle est en 2FN et si ses attributs normaux dépendent
directement de sa clé pas d’autres attributs. Cette normalisation peut entraîner à désimbriquer d’autres entités comme
le montre notre exemple.

Une entité o une association en 2FN avec au plus un attribut qui n’appartient pas à la clé , est par définition en
3FN.

IV-5- Forme normale de Boyce –Codd (BCNF)

DIPLÖME PERSONNE
Nom Nom
Prénom BCNF Prénom
Diplôme

Instutution
0, n

Fournir
0, n
INSTITUTION

Une entité ou une association est en BCNF si et seulement si elle est en 3FN, NomInstitution
et si aucun attribut faisant partie de la clé dépend d’un attribut ne faisant pas partie
Diplôme
de la clé.

IV-6--Élaboration et conception d’un modèle

IV-6-1- Étapes de la conception d’un modèle entité association

Dans l’ordre chronologique, ces étapes sont les suivantes

 Recueil des besoins


 Tri
 Identification des associations
 Vérification du modèle

IV-6-2- Conseils divers


IV-6-2-1- Concernant le choix des noms

a- Pour les entités, choisissez un nom commun décrivant l’entité. Il faut rester cohérent. Soit tous les noms
sont au singulier, soit ils sont tous au pluriel. Exemple : Étudiant, ETUDIANT, Étudiants
b- Pour les associations, choisissez un verbe à l’infinitif, éventuellement à la forme passive, ou accompagné
d’un adverbe.
Exemple : Enseigner, avoir lieu dans
c- Pour les attributs, utiliser un nom commun au singulier, éventuellement accompagné du nom de l’entité ou
de l’association dans lequel il se trouve.
Exemple : NumeroArticle, NomClient, Nom_Client, NumArticle
d- Concernant le choix des identifiants, évitez les identifiants composés de plusieurs attributs ; évitez les
identifiants susceptibles de changer au cours du temps; évitez les identifiants de type chaîne de caractères.

V- Bases de données relationnelles

V-1-Introduction au modèle relationnel.

V-1-1-Présentation

Dans le modèle relationnel, les données sont représentées par des tables. Les tables constituent la structure logique
du modèle relationnel. Elles ne représentent qu’une abstraction d’enregistrements physique des données en
mémoire

A- Les objectifs

Les objectifs sont :

 Proposer des schémas de données faciles à utiliser


 Améliorer l’indépendance logique et physique
 Mettre à la disposition des utilisateurs des langages de haut niveau
 Optimiser les accès à la bdd
 Améliorer l’intégrité et la confidentialité
 Fournir une approche méthodologique dans la construction des schémas
B- Définir le modèle de façon informelle
Les données sont organisées sous forme de tables à deux dimensions encore appelées relations dont les lignes
sont appelées n-uplet ou « Tuple », en Anglais.
 Les données sont manipulées par des opérateurs de l’algèbre relationnelle.
 L’état cohérent de la base est défini par un ensemble de contraintes d’intégrité
 Au modèle relationnel, est associé la théorie de la normalisation des relations qui permet de se débarrasser des
incohérences lors de la conception d’une base de données relationnelle.

V-1-2- Les éléments du modèle relationnel

A- Attribut
IL est un identificateur décrivant une information dans une base
B- Le domaine de l’attribut est l’ensemble fini ou infini de ses valeurs possibles
C- Relation
Une relation est un sous ensemble du produit cartésien de n sous domaines d’attributs, n supérieur à zéro.
D- Schéma de relation
Il précise le nom de la relation ainsi que la liste des attributs et le nom de leurs domaines.
Exemple :
Schéma de NoSecu Nom Prenom la relation
PERSONNE (NoSecu :
entier, 35214645 HALIDOU ASSAMAOU Nom : chaîne,
Prenom : chaîne)
84294294 KIKI Gérard

4985652 ZONNON Samuel


E- Degré de relation
Le degré de relation est le nombre d’attributs de cette relation

NB : Les autres éléments du modèle relationnel sont :

 Occurrence ou n-uplet ou tuple


 Cardinalités
 Clé candidate ; clé primaire ; clé étrangère
 Schéma relationnel
 Base de données relationnelle (elle est constituée par l’ensemble des n-uplets des différentes relations du
schéma relationnel).

V-1-5- Passage du modèle entité-association au modèle relationnel

V-1-5-1-Règle de passage

Pour traduire un schéma du modèle entité association vers le modèle relationnel, on applique les règles suivantes :

 La normalisation devrait toujours être effectuée avant les passages au modèle relationnel
 Chaque entité donne naissance à une relation
 Chaque association dont aucune pate n’a pour cardinalité maximale 1 donne naissance à une relation. Chaque
attribut de cette association devient un attribut de la relation.
 Une association dont au moins une pate a une cardinalité maximale égale a 1 ne devient pas une relation. Il
devient en effet une dépendance fonctionnelle.

V-1-3-2- Cas particulier d’une association de type 1 vers 1

0,1 1,1
CITOYEN
CANDIDAT
NumCitoyen
Être NumCandidat
Nom
Parti
Prénom

Adresse

Dans cet exemple, les cardinalités maximales de entités sont de 1 .L’application des règls de passage du modele entité
association au modèle relationnel donneraient :

Citoyen (NumCitoyen, NumCandidat, Nom, Prenom, Adresse)

Candidat (NumCandidat, NumCitoyen, Parti)

L’attribut NumCandidat dans l’entité Citoyen est une clé étrangère dans cette entité. L’association Ëtre etant de type 1
vers1, il est entièrement matérialisé dans la relation CITOYEN. Il est donc inutile de faire cette matérialisation.
Dans ce cas, l’attribut NumCandidat dans la relation citoyen doit être supprimé. D’autre part dans le relation cndidat,
l’attribut NumCitoyen, en plus d’être clé étrangère, est une clé « candidate ».

On peut donc se passer de la clé NumCandidat.

V-1-3-3- Cas particulier d’une entité sans attribut autre que sa clé

Lorsqu’une entité ne possède pas d’attribut en dehors de sa clé, il ne faut pas nécessairement en faire une entité.

DATE

Date

EXEMPLAIRE
PERSONNE

NumExemplaire Emprunter NumPersonne

DateAchat DateRetour Nom

Prenom

Adresse

Dans l’exemple ci-dessus, l’entité DATE ne doit pas être matérialisée dans une relation.

EXEMPLAIRE (NumExemplaire, DateAchat)

PERSONNE (NumPersonne, NOM, Prenom, Adresse)

EMPRUNTER (NumExemplaire, NumPersonne, Date, DateRetour)

PATIENT
1, n
MUTUELLE
NumPatient
0, n UTILISER
NomPatient NumMutuelle

PrenomPatient NomMutuelle

1, n

HOSPITALISER AFFECTATION
MEDECIN 0,n
Chambre NumAffectation
NumMedecin
Duree_Hospit NomAffectation
NomMedecin
0,n
PrenomMedecin 1,n

DATE_ENTREE

DateEntree
MUTUELLE (NumMutuelle, NomMutuelle)

MEDECIN (NumMedecin, NomMedecin, PrenomMedecin)

AFFECTATION (NumAffectation, NomAffectation )

PATIENT (NumPatient, NomPatient, PrenomPatient, #NumMutuelle)

HOSPITALISER (#NumMedecin, #NumAffectation, #Date_Entree, #NumPatient, chambre, Duree_Hospi)

V-2- Normalisation-Projection-Processus

V-2-1- Définition

Le processus de normalisation consiste à remplacer une relation donnée par certaines projections afin que la jointure de
ces projections permette de retrouver la relation initiale. La normalisation sera abordée en s’appuyant sur les notions de
dépendances fonctionnelles, dépendances multi variées, dépendances de jointure. Les concepts de normalisation
permettent par un moyen direct de fournir ces dépendances.

La dépendance fonctionnelle permet de définir les premières formes normales, jusqu’à la forme normale de Boyce
CODD (1FN, 2FN, 3FN, BCNF)

La dépendance multivariée permet de définir la 4ème FN, et la dépendance de jointure, la 5ème FN.

V-2-2-Dépendance fonctionnelle

A- Définition
Soit R un schéma de relation R (A1, A2…An) et x, y les sous-ensembles de A1, A2, …, An

On dit que x détermine y, ou que y dépend fonctionnellement de x si et seulement si les valeurs identiques de x
impliquent les valeurs identiques de y.

On le note x  y

Autrement dit, il existe une dépendance fonctionnelle entre un ensemble d’attribut x et un ensemble d’attributs y , si
on ne peut lui associer qu’une seule occurrence de y. Elle caractérise donc une extension de la relation

B- Définion2 : dépendance fonctionnelle élémentaire.

Une df élémentaire est une df de la forme X-> A où A est un attribut unique n’appartenant pas à x, et où il
existe x’ inclut au sens strict dans x tel que x’A .
Autrement dit, une dépendance fonctionnelle est élémentaire si la cible est un attribut unique et si la source
ne comporte pas d’attribut de super flux.
Lorsque la partie gauche de la df comporte plusieurs attributs, la question ne se pose plus.

C- Dépendance fonctionnelle directe


Une df X  A est une df directe s’il existe un attribut B tel que l’on puisse avoir XB et B A
Cela signifie que la df entre X et A ne peut être obtenue par transitivité

V-3- Algèbre relationnel

V-3-1-Introduction
Un algèbre relationnel est un support mathématique cohérent sur lequel repose le modèle relationnel. Son but est de
décrire les opérations qu’il est possible d’appliquer sur les relations pour produire de nouvelles relations. L’approche est
plus opérationnelle que mathématique.

On distingue trois familles d’opérateurs relationnels :

 Les opérateurs unaires


 Les opérateurs binaires ensemblistes
 Les opérateurs n-aires

V-3-2- Sélection

La sélection génère une relation regroupant exclusivement toutes les occurrences de la relation IR qui satisfont
l’expression logique E.

On la note (E)R

Il s’agit d’une opération logique et la note relation x expression logique  relation

Autrement dit, la sélection permet de sélectionner les lignes dans le tableau. Le résultat de la sélection est donc une
nouvelle relation qui a les mêmes attributs que R.

V-3-3-Projection

La projection consiste à supprimer les attributs autres que A1 à An d’une relation et à éliminer les n-uplets en double
apparaissant dans la nouvelle relation. On la note : 0(A1…An)R

Il s’agit d’une opération unaire dont la signature est :

Autrement dit, la projection permet de choisir les colonnes dans le tableau

Signature : relation x liste d’attributs-- relation

V-3-4- Union

C’est une opération qui porte sur deux relations R1 et R2 ayant le même schéma et construisant une troisième relation
constituée des n-uplets appartena nt à chacune des relations R1 et R2 sans doublons.

On la note : R1 U R2

Il s’agit d’une opération binaire ensembliste commutative essentielle dont la signature est : relation x relationrelation

V-3-5- Intersection

Opération sur deux relations qui donne une troisième relation. Elle est notée R1 ղ R2.

C’est une opération binaire ensembliste.

V-3-6-Différence

C’est une opération portant sur deux relations R2 ayant les mêmes schémas et dont les n-uplets sont constitués de ceux
qui se trouvent dans la relation R1.

Il s’agit d’une opération binaire non commutative et dont la signature est : relation x relation—relation (R1-R2)

V -3-7-Produit cartésien

Le produit cartésien est une opération portant sur deux relations R1 et R2 et qui construit une troisième relation
regroupant toutes les possibilités de combinaison de R1 et R2.

Il s’agit d’une opération binaire commutative essentielle dont la signature est : relation X relation  relation (R1 x R2)
V-3-8-Jointure, thêta jointure

La jointure est une opération portant sur deux relations qui construit une3ème groupant toutes les possibilités de
combinaison des occurrences qui satisfont l’expression logique de E .

La jointure est notée :

Il s’agit d’une opération binaire commutative dont la signature est : relation x relation x expression logique relation

V-3-9-Division

C’est une opération portant sur R1 et R2

Telles que le schéma de R2 est strictement inclus dans celui de R2, schéma de R2 inclus dans R1, et qui génère une
troisième relation regroupant toutes les parties d’occurrence de R1 qui sont associées à R2

C’est une opération binaire non commutative dont la signature est : relation X relation relation (R1/R2)

VI-LE NIVEAU CONCEPTUEL DE DONNEES

La modélisation conceptuelle des données est la représentation de l’ensemble des systèmes de formation utilisés sans
tenir compte des aspects organisationnels et techniques liés à leur mise en œuvre dans tel ou tel traitement. Cette
représentation est appelé SCHEMA CONCEPTUEL DES DONNEES (SCD).

VI-1-Les concepts

VI-1-1- La propriété

C’est le plus petit lot d’informations manipulé par l’entreprise et qui a un sens en lui-même. Elle est décrite par un nom
permettant de le l’identifier de manière unique au sein du système d’information.

Exemple : NomEleve, RefProduit, NumEtudiant

VI-1-2- Dictionnaire des données

C’est le résultat de la phase de collecte des données. Cette dernière se fait à partir des documents et/ou des entrevues
(Interviews). Le formalisme est le suivant :

Propriétés Signification Type Taille

VI-1-3- Entités-Identifiants, association, cardinalité (Confère cours)

VI-3-4-Contrainte d’intégrité fonctionnelle (CIF)

C’est une association binaire non porteuse dont l’une des pattes a pour cardinalité maximale 1. Elle exprime le fait
qu’une entité soit entièrement déterminée par une autre entité.

Exemple :

a- Cas d’une entité

1, 1 1, n
PRODUIT FAMILLE
Appartenir
RefProd CodFam
Famille
Produit
LibProd NomFam
RefProd

LibProd CIF
ou

b- Cas d’au moins deux entités

Matiere Dispenser Filiere


Coef

1,n
1,n

Enseignant

CIF
1,n

VI-1-5--Contrainte d’intégrité multiple

C’est une association de type (n, n) c’est-à-dire une association dont la cardinalité maximale n’impacte n. Elle est encore
appelée association non hiérarchique

VI-2- Remarque sur les dépendances fonctionnelles

a- Soit deux entités A et B.


A est la source de la df et B est le but. A toute valeur de A correspond une seule valeur de B
b- Lorsque A est réduit à une propriété, on parle de df à deux rubriques (DF2R)
c- Lorsque A est composée d’au moins deux attributs, on parle de df a partie gauche composée (DFPGC)

VI-2-1-Recherche des df élémentaires e directes DFED

Elle consiste à partie du dictionnaire de données, à :


 Rechercher les DR2R, c’est-à-dire celles qui ont pour sources, les numéros les codes et les références
Exemple :
Matricule  Nom
Cod Mat LibMat
CodFil LibMat

 Rechercher les DFPGC. Pour ce faire :


*Considérer l’ensemble S des rubriques sources des DR2R
*Considérer l’ensembles des rubriques non encore concernées par les DF2R, ni à la source, ni au but
*Rechercher les dépendances dont la source est constituée d’au moins deux rubriques de N et/ou de S et le but
serait toujours une rubrique de N.
 Le dernier point est pris en considération quand on ne peut vraiment pas trouver de df incluant toutes les
rubriques de N au but ou quand toutes rubriques de N sont concernées par au moins une dépendance
fonctionnelle

VI-2-2- Couverture minimale

C’est l’ensemble minimum de dépendances fonctionnelles, c’est-à-dire la liste de toutes les dfe , df directes, dr2R et
DFDGC

VI-2-3- Matrice des df (MDF)

C’est une représentation de la couverture minimale sous forme d’un tableau oû les sources sont représentées en
colonnes et les dfe directes en lignes.

Buts Sources

No Ligne Propriétés

C’est un schéma qui met en évidence, les entités, les cardinalités et associations

VI-3-1-Passage de la couverture minimale au SCD

Une source de df2r gen7re une entit2 dont elle est l4identifiant

Une source de df2r pointant vers une source de df2r indique une relation entre les deux entités déterminées par ces
deux sources.

Les cardinalités 0, 1 et 1, n seront placées du côté de l’entité où se trouve la source de la df.

Les autres cardinalités seront 0, n ou 1, n

Une DFPGC génère une association porteuse quand elle a pour but une propriété (ou plus) non recensée comme source
de la df2r.

Cette association relie les entités dont les identifiants correspondent aux propriétés de la source.

Les cardinalités sont généralement égales à 0, n ou 1, n.

Une dfpgc génère une CIF multiple quand elle a pour but une propriété recensée comme source de la df2r.
En utilisant les df, on reporte sur le schéma conceptuel de données, des propriétés qui n’y sont pas encore. Il suffit de
reporter chaque propriété dans le symbole (entité ou association dont l’identifiant est la source de la df et qui a pour
but cette propriété à placer)

VII- Niveau logique des données


VII-1- Relation
C’est un ensemble d’attributs significativement associés.

Elle est représentée de deux manières : en intention et en extension.

En intention, elle est représentée par un nom et une liste des attributs et est décrit par le formalisme <Nom
relation>(<Attribut1, attribut2, attribut n>)

En extension, elle est représentée par une table à deux dimensions.

Nom Attribut1 Attribut2 Attribut n


relation

… … …

valeur valeur valeur

… … …

VII-2- Schéma logique et relationnel (SLR)

VII-2-1- Passage de la couverture minimale au SLR

Toute ligne de df de la couverture minimale correspond à une relation dans le modèle relationnel des données. Pour
chacune de ces lignes, :

 La source des df (placée à la gauche de la flèche) correspond à la clé primaire de la relation.


 Les propriétés placées à droite de la flèche (qui ne sont pas sources d’une autre df, ) correspondent aux
attributs de la relation
 Les propriétés placées à droite de la flèche (qui sont sources d’une autre df,) correspondent aux clés étrangères
de la relation

Remarque : Les noms des relations ne sont pas fournis par la couverture minimale. Il faut les proposer en
s’appuyant par exemple sur les clés primaires.

VII-2-2- Passage du Schéma conceptuel de données au SLR

 Toute entité devient une relation ayant pour clé primaire l’identifiant de l’entité et pour autres attributs, les
propriétés de l’entité.
 Toute association de type n,n devient une relation ayant pour clé primaire l’identifiant implicite de l’association,
et pour autres attribut les propriétés de l’association si elle en possède
 Toute CIF induit la création d’une clé étrangère dont la relation ayant pour origine l’entité du côté où la
cardinalité maximale est 1.
La clé étrangère n’est rien d’autre que l’identifiant du côté où la cardinalité maximale est n

La modélisation physique des données consiste à implanter l’ensemble des données au moyens d’un SGBD se référent
au même modèle de représentation que celui retenu pour le schéma logique de données.

On implantera donc le schéma physique relationnel

Les concepts
*Le champ : c’est le plus petit élément manipulable par l’utilisateur

Il est décrit par un nom, un type, des propriétés de type et une description

*La table : c’est un ensemble de champs significativement associés

Nom_Table

Champ1

Champ2

Champ n

VII-2- Le schéma physique relationnel

Tous les attributs d’une relation deviennent des champs de la table.

 La clé primaire de la relation devient la clé primaire de la table


 La clé étrangère de la relation devient la clé externe de la table
 Toute clé étrangère de niveau logique induit la création d’un lien entre deux tables au niveau physique. Sous ce
lien est mentionnée la valeur 1 du côté de la table où se trouve la clé primaire, et la valeur infinie du côté de la
table où se trouve la clé la clé primaire de l’autre table.

VII-2-2-Les contraintes d’intégrité

On en distingue deux à savoir :

 Contrainte d’intégrité de domaine : c’est l’ensemble des règles de contrôle de cohérence des valeurs prises par
les attributs par rapport à leur domaine de valeur.
 Contrainte d’intégrité de table : C’est l’ensemble des règles de contrôle de valeurs prises par des clés primaires
des tables.
La valeur de la clé primaire doit être unique et non nulle
 Contrainte d’intégrité de référentiel : c’est l’ensemble des règles de contrôle de cohérence des valeurs prises
par les clés étrangères par rapport aux clés primaires des autres relations auxquelles elles sont liées

IX- Application :
IX-1- Application 1

On considère le schéma conceptuel de données ci-dessous.

Filière 0, n Eleve
1,1 0, 1
CodFil CIF NumMat Pratiquer
LibFil NomEle
PrenomEle
Age
1, n DateIn

Dispenser

Coef
Matière

CodMat,
Sport
LibMat
CodSp
1, n LibSp

Nombre Nombre Nombre Nombre de CIF Nombre de CIM


Entités d’associations Associations
binaires non
porteuses
Travail
à faire :

1- Déterminer le nombre d’entités, d’associations, d’associations binaires non porteuses, de contrainte d’intégrité
multiple (CIM) , de contrainte d’intégrité fonctionnelle (CIF).
2- Dressez la couverture minimale ayant généré ce schéma conceptuel de données
3- Élaborez la matrice de dépendance fonctionnelle
4- Justifiez les cardinalités
5- Élaborez le schéma logique et relationnel correspondant
6- En déduire le schéma physique relationnel

Réponses
1-

2- Couverture minimale

3- Matrice de dépendances fonctionnelles

4-

X- LANGAGE SQL

X-1- Introduction

X-1-1-Présentation générale

Vous aimerez peut-être aussi