Académique Documents
Professionnel Documents
Culture Documents
données relationnelles
Cours VBA Access
Mahdi Zargayouna
zargayou@lamasade.dauphine.fr
Objectifs
Concevoir et bâtir des systèmes d’information informatisés
Comment ?
Il faut :
Avoir une méthode qui, à partir d’un problème de gestion nous permet de modéliser
une base de données correspondantes (modèle entités –associations)
Connaître un langage qui permet de gérer la base de données (SQL)
Nous avons :
les informations relatives à chaque client
les informations sur ses commandes de ce client
Les informations sur les produits commandés
Saisie des informations
Très bien.
Sauf que Zorba n’a pas commandé qu’un seul produit !
Nous devons dupliquer toutes les informations relatives au client dans la ligne qui suit
Si on ne saisit que les informations relatives à la commande, le lien entre la commande
et le client sera perdu (si on fait un tri, par exemple)
Ce qui donne ..
Redondance de données
Gaspillage d’espace et source d’erreurs
C’est pour ces différentes raisons que nous avons besoin des bases de données
relationnelles et des systèmes qui permettent de les créer et de les gérer : le Systèmes de
Gestion de Bases de Données Relationnelles (SGBDR)
Le logiciel Microsoft ACCESS et un SGBDR
Conception d’une base de données
étape 1
La conception est l’établissement du « plan » de la base de données
Une entité représente tous les sujets qui sont décrits de la même manière
Par exemple, tous les clients sont décrits par un nom, une adresse etc.
Une commande est aussi une entité (décrite par réfProduit, PrixHT etc.)
Cette étape pourrait être vue comme la réalisation de fiches types des différents composants de
notre système
Pour le moment, on ne se soucie pas de savoir lien entre les clients et les commandes
(Quel client a passé quelle commande)
Étape 1 : suite - Schéma
Nous avons identifié trois entités : dessinons-les
Nom Description
Date Commande
Adresse PrixHT
Date Livraison
Code Postal TVA
Frais de port
… …
…
On peut désormais rajouter dans chaque entité, les informations qui la décrivent (attributs)
Principes :
Chaque attribut doit être ‘atomique’ : ne pas être un champ composé.
Exemple type: adresse : il faut décomposer en rue, ville code postal etc.(important lors de la mise à jour notamment)
Aucun attribut ne doit ‘dépendre’ d’un autre champ, autre que l’identifiant
Exemple : le département et le code département
Entités … et ?
Nous avons organisé nos entités en fiches types, si nous les remplissons, nous devenons
capables de connaître l’étendue de notre carnet d’adresse, la taille de notre fichier de
commandes, ajouter des clients, des produits…
Nous ne gaspillons pas d’espace puisque chaque client est stocké une seule fois, idem pour chaque
commande, produit etc.
Cependant
Dans le tableau initial, nous savions que telle commande était passée par tel client car ils
étaient sur la même ligne
D’où l’étape 2
Conception d’une base de données
étape 2
Identification des ‘associations’
Une association sert à définir l’action qu’exercent les entités entre elles
Dans le schéma, une association est un lien entre deux entités, avec un verbe qui décrit l’action
On pourrait aussi dire qu’un client achète ou commande un produit, mais cette relation est déduite des
deux autres
« (Par-Dans..) Combien de {autre entité} un(e) {entité} peut-il(elle) être {action} ? » (sens contraire)
Exemple
Par combien de clients une commande peut-elle être passée ? Un seul (1)
N°Client N°Commande
Passer
Nom 1 1..N Date Commande
Adresse Date Livraison
Code Postal Frais de port
… N°Client
Association un à plusieurs
reproduire l'identifiant de l’entité qui est du côté un dans l’entité côté plusieurs
N°Commande RefProduit
1..N Contenir 1..N Description
Date Commande
PrixHT
Date Livraison
TVA
Frais de port
…
N°Client
Chaque entité doit avoir un identifiant UNIQUE, quel est l’identifiant de l’entité Commandes_Produits ?
Si on convient qu’un produit ne figure pas deux fois dans la même commande, l’identifiant est l’union
des deux identifiants (cas le plus fréquent)
II. Nous identifions les actions mutuelles qu’exercent les entités entre elles
Nous découvrons les cardinalités
Nous appliquons les règles des effets des cardinalités
Il suffit de la remplir
Vocabulaire (1/2)
tabCommandes
tabCommandes
N°Commande
Date Commande
Date Livraison
Frais de port
N°Client
Vocabulaire (2/2)