Passage du MCD au MLD
Le Modèle LOGIQUE de Donnée (MLD) ou
Modèle Relationnel, est celui qui correspond à
l'organisation des données dans les bases de
données relationnelles.
Les SGBD actuels les plus courants sont
relationnels (Oracle, SQL Server, Access,
MySql, … ).
Un modèle relationnel est composé de
relations, encore appelée tables. Ces tables
sont décrites par des attributs ou champs
(noms de colonnes).
Passage du MCD au MLD (suite)
L'identifiant d'une relation est composé
d'un ou plusieurs attributs qui forment la
clé primaire. Une relation peut faire
référence à une autre en utilisant une clé
étrangère, qui correspond à la clé
primaire de la relation référencée.
Chaque ligne (tuple ou enregistrement)
d'une table représente une occurrence de
l'entité ou de l'association
correspondante.
Passage du MCD au MLD - Règle numéro 1 :
Toute entité du MCD devient une relation ayant pour clé
primaire son identifiant. Chaque propriété se transforme en
attribut de la relation.
Exemple:
CLIENT(numClient , nom , prenom , adresse)
Passage du MCD au MLD - Règle numéro 2 :
Une association de type 1:N (c’est à dire qui a les cardinalités
maximales positionnées à « 1 » d’un côté de l’association et à « n »
de l’autre côté) se traduit par la création d’une clé étrangère dans la
relation correspondante à l’entité côté « 1 ».
Cette clé étrangère référence la clé primaire de la relation
correspondant à l’autre entité.
Exemple:
CLIENT(numClient , nom , prenom , adresse)
COMMANDE(numCommande ,dateCommande , #numClient)
Passage du MCD au MLD - Règle numéro 3 :
Une association de type N :N (c’est à dire qui a les cardinalités maximales
positionnées à « N » des 2 côtés de l’association) se traduit par la
création d’une relation dont la clé primaire est composée des clés
étrangères référençant les relations correspondant aux entités liées par
l’association. Les éventuelles propriétés de l’association deviennent des
attributs de la relation.
Exemple:
COMMANDE(NumCommande ,dateCommande )
PRODUIT(RefProduit, LibelléProduit)
CONCERNE(#NumCommande, #RefProduit, quantité)
Passage du MCD au MLD (suite)
Associations ternaires :
Les règles définies ci-dessus s’appliquent aux associations
ternaires.
Associations réflexives :
Les règles définies ci-dessus s’appliquent aux associations
réflexives.
Exemple :
PIECE(codePiece , libellePiece)
COMPOSITION (#pieceComposee , #pieceComposante)
Passage du MCD au MLD
Cas particuliers : associations 1:1
On entend par association 1:1 une association dont les cardinalités maximales sont à 1
de chaque côté
Exemple 1 :
Si fonctionnellement, le marin est le plus important...
MARIN(numMarin , nomMarin , numVoilier , nomVoilier)
Clé primaire : numMarin
ou
Si fonctionnellement, le voilier est le plus important...
VOILIER(numVoilier , nomVoilier , numMarin , nomMarin)
Clé primaire : numVoilier
ou
Si le modèle peut évoluer ou si on a une distinction fonctionnelle forte entre marin et
voilier... VOILIER(numVoilier , nomVoilier , numMarin) Clé primaire : numVoilier Clé
étrangère : numMarin qui référence numMarin de la table MARIN
MARIN(numMarin , nomMarin , numVoilier) Clé primaire : numMarin Clé étrangère :
numVoilier qui référence numVoilier de la table VOILIER
Passage du MCD au MLD
Cas particuliers : associations 1:1 (suite)
Exemple 2 :
APPARTEMENT (numAppartement , superficie)
Clé primaire : numAppartement
PLACE_PARKING (numPlace , Etage , numAppartement)
Clé primaire : numPlace
Clé étrangère : numAppartement qui référence numAppartement de la
table APPARTEMENT
Passage du MCD au MLD
Cas particuliers : associations 1:1 (suite)
Exemple 3 :
ANIMATEUR (numAnimateur , nom)
Clé primaire : numAnimateur
ACTIVITE_CULTURELLE (idActivite , nomActivite)
Clé primaire : idActivite
ANIMER (numAnimateur , idActivite) Clé primaire : nimAnimateur +
idActivite Clé étrangère : numAnimateur qui référence numAnimateur de la
table ANIMATEUR
Clé étrangère : idActivite qui référence idActivite de la table
ACTIVITE_CULTURELLE
Langage SQL (Structured Query Language)
SQL (Structured Query Language) est utilisé pour interroger,
mettre à jour et gérer les informations des bases de données
relationnelles.
SQL a une triple fonction :
Interrogation et modification des informations de la base de
données relationnelle : DML Data Manipulation Language.
Définition et modification du schéma de la base de
données. DDL Data Definition Language
Contrôle de la sécurité et d'intégrité de la base : DCL Data
Control Language.
SQL : LANGAGE DE MANIPULATION DES DONNÉES
Lors de l'écriture des ordres SQL , un paramètre entre crochets [ ]
est facultatif.
SELECT Champ1,champ2…
FROM Table1,Table2
WHERE condition…
GROUP BY Champ1…
HAVING Condition…
ORDER BY Champ1….
SQL : LANGAGE DE MANIPULATION DES DONNÉES (suite)
Projection ou sélection de colonnes.
Une projection permet d'extraire les colonnes spécifiées d'une
table.
Une projection s'exprime à l'aide du langage SQL par la clause :
SELECT [ALL|DISTINCT] [Champ1[,champ2,...]
FROM nomtable ;
La clause DISTINCT permet d'éliminer les duplications.
- SELECT : spécifie les champs à afficher à l'exécution
- FROM : indique les tables qui contiennent les champs.
- WHERE : précise les champs qui doivent vérifier des conditions.