Vous êtes sur la page 1sur 25

Système d’information

et Base de données

1
Définition
Structuration

Base De Données
BD Un ensemble de données structurées et inter-corrélées,
enregistrées avec le minimum de redondance et pouvant être
traitées par une ou plusieurs applications, de façon optimale.

SGBD : Système de Gestion des Bases de données


Offre la possibilité de manipuler les représentations abstraites
SGBD
des données, indépendamment de leur organisation et de leur
implantation sur des supports physiques

2
Organisation
▪ un SGBD : un ensemble de logiciels permettant aux utilisateurs de définir,
créer, maintenir, contrôler et accéder à la BD

▪ une base de données est composée de tables

▪ chaque table est composée de champs

SGBD

BD BD BD

tables
3
Approche orientée Bases de Données

Ensemble de programmes ayant des interactions


avec la (les) base(s) de données grâce à des
requêtes appropriées vers le SGBD

Application A1 Programmes
pour A1

SGBD BD

Application An Programmes
pour An
Démarche classique d'un projet

Méthodologie Univers de Rapport


choix

Réel
Niveaux d’abstractions Analyse Perçu
Elaboration du Modèle
E-R Niveau Conceptuel
MCD Schéma
Conceptuel
Passage au Modèle Niveau Logique MLD Schéma
Relationnel
Logique

Implémentation Niveau Physique MPD


Sur SGBD-R
5
Modèle Entités - Relations

Concepts de base

Entités, Relations /
Clés Cardinalités
attributs Association

6
Modèle Conceptuel des Données (MCD)
Définition

Analyse ⇨ (MCD) : "Schéma Entité-Relation" ou "Schéma Entité-Association".

Commande Produit
Concerner

(Relation)

7
Type d’association
Chaque Association possède un nom, qui est généralement constitué par un verbe à l'infinitif.
Chaque relation a implicitement un identifiant, qui est composé par les identifiants des entités
auxquelles elle est liée.
CLIENT Passer Commande
1,N 1,1
Relation binaire Numéro Numéro
Nom Date
Prénom Quantité
Adresse

LAC RIVIERE
Déverser
Relation ternaire

Décharge

Personne Est marié


Relation réflexive Nom avec 8
Cardinalité

Les cardinalités précisent la participation de l'entité concernée à la relation.


Le premier nombre indique la cardinalité minimale, le deuxième la cardinalité maximale.

9
Cardinalité

Employé Utiliser Ordinateur


0,N 1,N
Numéro Numéro_PC
Nom Type
Prénom Configuration
Adresse
Code_postal
Service

Entre l'entité Employé et la relation Utiliser, nous avons: Entre l'entité Ordinateur et la relation
Utiliser, nous avons:
• Cardinalité minimale = 0
Certains employés n'utilisent pas d'ordinateur • Cardinalité minimale = 1
• Cardinalité maximale = N
• Cardinalité maximale =N
10
Exercice 1: Cardinalités?

1 2
CLIENT 3
APPARTIENT NumCli SIGNE
1-N Nom
1-N 1-1
Adresse
5 CONTRAT
1-1
4 NumCtr
VEHICULE 1-1 1-1 Type
COUVERT Date
NumVeh
6
Marque
Modèle
Année 0-N 1-N ACCIDENT
Cylindrée CONCERNE NumAcc
Date
(Montant)
7 8
11
Modèle Logique des Données (MLD)
Conception d’une BD

Réalité

Indépendant du SGBD
Recueil des besoins et analyse

Besoin de la BD

Conception logique

Schéma conceptuel (haut niveau)

Transformation du modèle

Spécifique à
Schéma conceptuel (spécifique SGBD)

un SGBD
Conception physique

Schéma physique (spécifique SGBD)


12
(1,1) - (0,N) : se fait comme une relation un-à-plusieurs normale.

DEPARTEMENT
DEPARTEMENT
Nom
Adresse Nom Adresse

0-N
Occupe

1-1
EMPLOYE
EMPLOYE
Matricule
Nom Matricule Nom Fonction NomDpt
Fonction

13
0,N : La même règle s'applique

CLIENT PRODUIT
0-N 0-N
No_Cli No_Prod
Nom Achète Libellé
Adresse Quantité

CLIENT PRODUIT

No Cli Nom Adresse No Prod Libellé Quantité

ACHAT
NoClient NoProduit

14
Relation un-à-un
(1,1)—(1,1)

L'une des entités devient un attribut de l'autre entité.

Exemple : Client(No_Client, Nom, Adresse)


Carte_Membre(No_Carte,Type_Abonnement)

Deviennent:
Client(No_Client, Nom, Adresse, #No_Carte,Type_Abonnement).

15
Exemple : relation zéro-à-un
(0,1)- (1,1)

CLIENT Disposer Carte_membre

Numéro
0,1 1,1 No_Carte
Nom Type_Abonnement
Prénom Date_création
Adresse
Code_postal
Localité CLIENT
Carte_membre
NoClient
Nom No_Carte
Prénom NoClient
Disposer Type_Abonnement
Adresse Date_création
Cde_postal
Localité

Relation (0,1) – (0,1) :


Idem que précédemment avec choix.
Si l’association contient elle même des propriétés, alors >>> ajouter
avec la clé étrangère. 16
Exemple : relation ternaire
Si la relation entre chacune des paires d'entités ne peut déterminer la troisième entité.
Une table pour chacune des entités et une table pour la relation. Cette dernière possédera une clé primaire
composée d'au moins trois champs.

Médecin Acte
0-N Pratiquer 0-N
Nom-médecin Code-acte
Adresse Lieu Désignation
1-N

Patient
N°Sec.Soc
Nom
Medecin(Nom-Med, Adr)
Acte(Cd-Acte, Des)
Patient(NSS, Nom-Pat)
Pratiquer(#Nom-Med, #Cd-Acte, #NSS, Lieu)
17
Résumé

A A-B B Relation binaire :

(1,1) (1,N) A ( id_A, a1, a2, …, #id_B)


(1,1) (0,N) B ( id_B, b1,b2,…)
(1,N) (1,N) A ( id_A, a1, a2, …,)
(0,N) (0,N) B ( id_B, b1,b2,…)
(0,N) (1,N) A-B (#id_A, #id_B, a-b,…)

(1,1) (1,1) A ( id_A, a1, a2, …, id_B, b1,b2,…)

(0,1) (1,1) A ( id_A, a1, a2, …)


B ( id_B, b1,b2,…, #id_A)
(0,1) – (0,1) : Idem que (0,1)- (1,1) avec choix du placement de la clé étrangère.
18
Exercice 1 MLD SQL

CLIENT
APPARTIENT NumCli SIGNE
1-N Nom
1-N 1-1
Adresse
1-1 CONTRAT
NumCtr
VEHICULE 1-1 1-1 Type
COUVERT Date
NumVeh
Marque
Modèle
Année 0-N 1-N ACCIDENT
Cylindrée CONCERNE NumAcc
Date
(Montant)

19
Solution

CLIENT
NumCli Nom Adresse

CONTRAT
VEHICULE
Numcli NumCtr Type Date
NumVéh ... NumCli Ncli NumCtr

ACCIDENT
NumAcc Date (Montant)

CONCERNE
NumVeh NumAcc

20
MPD

Dépendant du modèle
Schéma physique de données
Dépendant du SGBD

SGBD : Système de Gestion des Bases de données

Offre la possibilité de manipuler les représentations abstraites


des données, indépendamment de leur organisation et de leur
implantation sur des supports physiques

21
S.Q.L. « Structured Query Language »

DDL (data definition language), sert à définir la structure:


créer, modifier, effacer...
DML (data manipulation language), sert à manipuler les données:
choisir, ajouter, effacer des tuples.
DCL (data control language), sert à contrôler l'accès à l'information.

22
S.Q.L. « Structured Query Language »
DDL (data definition language)

CREATE TABLE Création d'une table


CREATE INDEX Création d'un index
CREATE VIEW Création d’une vue
ALTER TABLE Modification de la structure
DROP TABLE Effacement d'une table

DML (data manipulation language)

INSERT Insérer un tuple


UPDATE Modifier un tuple
DELETE Effacer un tuple
SELECT Choisir un ensemble de tuples

DCL (data control language),


Sert à contrôler l'accès à l'information. 23
SQL Primary
key
Clé étrangère
CREATE TABLE LigneCommande (
Foreign
NoCommande VARCHAR (4) NOT NULL,
key
NoProduit VARCHAR (5),
QteCommandee INTEGER (4),
PRIMARY KEY (NoCommande, NoProduit),
FOREIGN KEY (NoCommande) REFERENCES Commande, not
null
FOREIGN KEY (NoProduit) REFERENCES Produit)

24
SQL
Ajouter une colonne à une table
ALTER TABLE FOURNISSEUR ADD Prenom CHAR(25);

Détruire une table


DROP TABLE FOURNISSEUR;

Créer un index
CREATE INDEX PR-FOUR1 ON FOURNISSEUR (VILLE);

CREATE UNIQUE INDEX PR-FOUR2 ON FOURNISSEUR (NOFOUR);


NOFOUR est donc une clé primaire.

25

Vous aimerez peut-être aussi