Vous êtes sur la page 1sur 29

Concepts de base de données

Objectifs du cours
Introduire les notions fondamentales relatives
aux bases de données afin de comprendre
l’historique qui a conduit à la modélisation
conceptuelle des données (ce qu’on verra dans les
modules ultérieurs)
Rappel Types de base de
données
Plusieurs approches pour organiser les
données dans un SGBD
SGBD hiérarchique:
les premiers, avec gestion de pointeurs arborescente
SGBD réseau (20%)
• les plus rapides, la navigation est aussi entre
pointeurs, mais plus ouvertes.
Rappel Types de base de données(suite)
SGBD relationnel (SGBDR) (75%) :
 la plus utilisée. Basé sur l'algèbre relationnelle.
données représentes sur forme des tables
Bases relationnelles :
Oracle www.oracle.com
DB2 www.software.ibm.com
Sybase www.sybase.com
SQL Server www.microsoft.com
Ingres s2k-ftp.CS.Berkeley.EDU/pub/Ingres
Bases relationnelles (suite):
Informix www.informix.com
Acces www.microsoft.com
Paradox www.corel.com
Visual Dbase www.borland.com
FoxPro www.microsoft.com
File Maker www.claris.fr
MySQL www.mysql.net (ou .com)
MSQL Hughes.com.au
Postgres www.postgresql.org
InstantDB www.instantdb.co.uk (100% Java)
Rappel Types de base de données(suite)
Bases déductives
-langage en calcul de prédicats et logique 1er ordre
Bases objet
-instances de classes hiérarchisées.
 Bases objet :
 O2 www.o2tech.fr
 Gemstone www.gemstone.com
 ObjectStore www.objectdesign.com
 Jasmine cai.com/jasmine
Interopérabilité avec les BD
Interopérabilité avec les BD
– Obstacle : Interfaces spécifiques des SGBD
– Remèdes
 ODBC (Open Data Base Connectivity)
 Les scripts CGI, ISAPI
 ASP, IDC, PHP
 JDBC (Java Data Base Connection)
Principaux concepts des BDRs
BDR : BD relationnelle
Principaux concepts
– Base de données
– Table
– Enregistrement
– Structure d’une table
– Attribut
– Clé
– Clé lointaine
– Liens entre les tables
Base de données
Définition :
– Une BD est une collection de données enregistrées
ensemble sans redondances inutiles
– Les données conservées sont dites persistantes (pour être
réutilisées)
Une BD est utilisée pour servir plusieurs
applications
L’enregistrement des données est indépendant des
programmes qui les utilisent
Approche commune et contrôlée pour ajouter,
modifier, retrouver des données
Base de données (suite)
Une BD relationnelle (BDR) est composée d’un ensemble
de tables reliées entre elles
Les relations entre les tables facilitent l’accès aux données
d’une table à partir des données d’une autre table
Exemple :
– Table Client contient : code du client, nom, adresse, numéro de
téléphone
– Table Commande contient : code du client, code du produit,
quantité
– Table Produit contient : code du produit, libellé du produit.
– À partir de la table Commande on peut accéder aux 2 autres tables
grâce à : code du client et code du produit
Table et enregistrement
Dans une BD, une table est l’objet
logique qui contient les données
Une table est identifiée par son nom
( qui doit être unique )
Exemples : Table fournisseur, table
client, table produit, table facture...
Table Client
Code du client Nom Téléphone Ville

Table Client
C101 Mamadou 66125141 Bamako
C102 Oumarou 65422108 Mopti
C103 Ibrahima 72156251 Sélingué

• Chaque ligne de la table est appelée enregistrement


• Un enregistrement contient l’ensemble des valeurs
composant la ligne
• Exemple : (C101, Mamadou, 66125141, Bamako) est
l’enregistrement du client C101
Attributs
Les attributs sont les éléments d’information d’une
table (aussi appelés champs)
Exemple : Code, nom, téléphone, ville sont les
attributs de la table Client
Il faut distinguer entre un attribut (exemple : nom)
et la valeur prise par l’attribut dans un enregistrement
particulier (exemple : Oumarou)
Attributs (suite)
Chaque attribut a des propriétés qui doivent être fixées
lors de la conception :
– Type de valeur : le type de donnée que doit avoir la valeur de
l’attribut
– Obligatoire : Cet attribut doit absolument posséder une
valeur
– Unique : Les valeurs prises par cet attribut sont toutes
différentes
– Intervalle de validité : les valeurs de ce champ doivent
appartenir à un intervalle. Exemple : [0,100] pour la note de
l’étudiant
– Intégrité référentielle : la valeur prise par cet attribut doit
absolument exister dans une autre table. Exemple : Code du
Clé
Un attribut est la clé d’une table s’il permet d’identifier
d’une façon unique tous les enregistrements de cette
table
La clé d’une table doit être unique et obligatoire
Exemples
– Table Étudiant matricule
– Table Produit code du produit
Table Commande numéro de la commande
Clé (suite)
Dans certains cas, deux ou plusieurs attributs d’une
même table sont candidats pour devenir clé
– Exemple : Les attributs matricule et NAS pour la table
Étudiant
Parfois, on a besoin de deux ou plusieurs attributs
pour assurer l’unicité
– Combiner ces attributs pour former la clé
– Clé composée
Les valeurs pour les deux attributs (pris ensemble)
d’une clé composée doivent être uniques
Clé (suite)
Exemple : Table Détails commandes

Numéro commande Numéro produit Quantité

c001 p001 20
c001 p004 9
c002 p002 11
c002 p004 15
Structure d’une table
La structure d’une table est définie par l’ensemble des
attributs qui la composent
Il y a trois (3) représentations possibles
1. CLIENT (Numéro du client, Nom, téléphone, ville, pays)
2.
Structure d’une table (suite)
3.
Clé lointaine
Un attribut est appelé clé lointaine lorsqu’il est clé
primaire dans une autre table
Exemple :
– CLIENT (Numéro du client, Nom, téléphone, ville, pays)
– PRODUIT (Numéro du produit, Numéro du fournisseur,
Description)
– COMMANDE (Numéro de la commande, Numéro du
client, date de la commande)
– DÉTAIL COMMANDE (Numéro de la commande, Numéro
du produit,Quantité)
Clé lointaine(suite)
Une clé lointaine n’est pas unique
La clé lointaine sert à faire le lien entre deux tables
La clé lointaine doit respecter l’intégrité référentielle
Il n’est pas nécessaire que la clé lointaine soit
obligatoire
– Exemple : Ajouter un produit dans la BD sans connaître son
fournisseur
Lien entre les tables de la BD
Les liens entre les tables sont assurés par les attributs
communs
Lien entre la clé primaire d’une table et la clé lointaine
d’une autre table
Exemple
– CLIENT (Numéro du client, Nom, téléphone, ville, pays)
– COMMANDE (Numéro de la commande, Numéro du
client, date de la commande)
– DÉTAIL COMMANDE (Numéro de la commande, Numéro
du produit, Quantité)
– PRODUIT (Numéro du produit, Numéro du fournisseur,
Description)
Lien entre les tables de la
BD(suite)
– Liens :
 Entre CLIENT et COMMANDE
 Entre COMMANDE et DETAIL COMMANDE
 Entre PRODUIT et DETAIL COMMANDE
Diagramme de structure de la
BD
Le DSBD sert à représenter le schéma de la BD
– Tables (tous les attributs - clé soulignée)
– Liens entre les tables (flèches reliant les attributs)
Diagramme de structure de la
BD (suite)
Pour compléter le DSBD, il faut construire un tableau
décrivant les contraintes sur les attributs pour chaque
table
Exemple
Recommandations
Donner des noms significatifs aux attributs
– Au lieu de nommer un attribut ‘nom’ le nommer
NomClient ou NomFournisseur
– Au lieu d’indiquer dans une table l’attribut ‘date’ ou
‘quantité’, les nommer significativement comme
‘DateFacture’, ‘DateLivraison’, ‘QuantitéCommandée’
‘QuantitéFacturée’
Pourquoi une telle recommandation?
Langage de requête
Permet de déterminer :
– les informations que l’on veut obtenir (les attributs) et leur
formulation
– de quelle(s) table(s) on obtient ces informations
– les contraintes sur ces informations
– le tri des informations
Recommandations
Permet de déterminer :
– les informations que l’on veut obtenir (les attributs)
et leur formulation
– de quelle(s) table(s) on obtient ces informations
– les contraintes sur ces informations
– le tri des informations

Vous aimerez peut-être aussi