Initiation aux bases de données et à la programmation événementielle

Slides:



Advertisements
Présentations similaires
Base de Données / MCD Introduction en utilisant un SGBD simple (Access) Quinio Université Paris Ouest2010 Quinio.
Advertisements

Un modèle conceptuel Le modèle Entité-Association Frédéric Gava (MCF)
Introduction Pour concrétiser l’enseignement assisté par ordinateur
Le Modèle Logique de Données
La base de données : le modèle relationnel.
INTRODUCTION.
Initiation aux bases de données et à la programmation événementielle
Bases de Données Plan du cours : Année : 2009/10 A - Généralités :
Initiation au système d’information et aux bases de données
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
Analyse et Conception des Systèmes d’Informations
INITIATION AU GRAFCET E. HELLOT lycée P. Duez.
Initiation au système d’information et aux bases de données
Règle 0 & 1: attribut et classe
Initiation à la conception des systèmes d'informations
Développement d’applications web
Rappel sur les bases de données et le vocabulaire
ETAPE03 « Produits et ingrédients…… » « Produits et ingrédients… » Rappel : Dans létape 2, nous avons vu une organisation plus complète des données relatives.
Initiation à la conception de systèmes d'information
Initiation aux bases de données et à la programmation événementielle
Initiation à la conception des systèmes d'informations
Modélisation E/R des Données
Introduction à la conception de Bases de Données Relationnelles
Transformation du diagramme de classe en modèle relationnel
Chap 4 Les bases de données et le modèle relationnel
1 Initiation aux bases de données et à la programmation événementielle Cours N°9 : Gestion de la cohérence avec des sous-formulaires. Support de cours.
Le modèle relationnel.
L’utilisation des bases de données
Modèle Logique de Données
Cas pratique : Interim.
Les concepts et les méthodes des bases de données
Initiation aux bases de données et à la programmation événementielle
Initiation aux bases de données et à la programmation événementielle
Initiation aux bases de données et à la programmation événementielle
Initiation aux bases de données et à la programmation événementielle
Initiation aux bases de données et à la programmation événementielle
Modèle Logique de Données (MLD)
Initiation à la conception des systèmes d'informations
Chapitre 3 La normalisation du modèle relationnel
Démarche de détermination de la structure d'une base de données
DOSSIER G10 – La base de données Relationnelle
Initiation à la conception des systèmes d'informations
Bases de données : modèlisation et SGBD
Cours n°1 Introduction, Conception
SYSTEMES d’INFORMATION séance 1 : Introduction et définitions
1 Initiation aux bases de données et à la programmation événementielle Responsable : Souheib BAARIR. (le sujet de votre .
Quinio1 Bases de données : modèlisation et SGBD Séance 3 B Quinio.
eXtensible Markup Language. Généralités sur le XML.
 L’information est conservée sous forme de tables  Contient: ◦ Un nom ◦ Une clé primaire ◦ Une liste de colonnes ◦ Les informations/données (sous forme.
Introduction avec Access Quinio Nanterre 2008
06/04/06 LES BASES DE DONNEES INTRODUCTION CogniTIC – Bruxelles Formation - Cepegra.
Comprendre le SGBDR Microsoft Access – partie 2
ANALYSE LE MCD 1ère approche
Nouvelles Technologies Internet & Mobile
ANALYSE LE MCD 1ère approche
INTRODUCTION AUX BASES DE DONNEES
INTRODUCTION AUX BASES DE DONNEES Modèle entités-relations
Initiation aux bases de données et à la programmation événementielle Cours N°2 : langage d’interrogation de données. (Les requêtes statistiques et autres).
Initiation aux bases de données et à la programmation événementielle
1 Initiation aux bases de données et à la programmation événementielle Cours N°8 : Gestion de la cohérence avec des zones de liste déroulantes. Souheib.
INTRODUCTION AUX BASES DE DONNEES Dépendances et normalisation
Introduction Module 1.
Les bases de données Séance 4 Construction du Modèle Physique (la BDD)
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 11 Support de cours rédigé par Bernard COFFIN Université.
Initiation aux bases de données et à la programmation événementielle Outil de création des tables Support de TD rédigé par Bernard COFFIN Université Paris.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 4 Support de cours rédigé par Bernard COFFIN Université.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 8 Support de cours rédigé par Bernard COFFIN Université.
1 Initiation aux bases de données et à la programmation événementielle VBA sous ACCESS Cours N° 7 Support de cours rédigé par Bernard COFFIN Université.
Transcription de la présentation:

Initiation aux bases de données et à la programmation événementielle Cours N°5 : Schéma d’une Base de Données (Conception d’une BD) Souheib BAARIR. Page web : http://pagesperso-systeme.lip6.fr/Souheib.Baarir/bdvba/support.htm E-mail : souheib.baarir@u-paris10.fr Université Paris Ouest Nanterre la Défense.

Introduction (1/2) Nous avons étudié: les requêtes d’Interrogation de Données (LID). Requêtes de Bases. Requêtes Statistiques. Les requêtes de Manipulation de Données (LMD). Les requêtes de Définition de Données (LDD). Ceci est « suffisant », pour interroger une BD existante ou, pour en créer une, dont les schémas des tables sont établies. Comment faire quand les schémas n’existent pas !? On a juste un Cahier de Charge (CC) informel citant des informations complexes liées entre elles !

Introduction (2/2) Il faut savoir concevoir une Base de Données : à partir d’un CC, définir le schéma de la BD. Schéma d’une BD : l’ensembles des schémas des tables de la Base de Données (avec les liens logiques). Autrement dit, à partir du CC, savoir : répartir les informations à mémoriser entre le différentes tables et, définir les liens logiques qui relient ces tables.

De l’information à la BD Une information est complexe : on peut la décomposer en éléments (informations atomiques), un élément est une donnée. Les données sont réparties en ensembles, chaque ensemble décrit un sens commun, il décrit donc un même concept. Les concepts ne sont pas indépendants, ensemble, ils permettent de restituer l’information complexe, ils sont donc reliés par des liens sémantiques. Une donnée est décrite par un champ d’une table. Une table est la réalisation d’un concept. Réalisé au travers des liens logiques, qui dépendent du choix de gestion à mettre en place : (1-N) ou (N-N).

Un premier exemple des écrivains et leurs œuvres. On veut enregistrer des informations sur : des écrivains et leurs œuvres. Que faut-il définir ? un seul concept (l’œuvre et son auteur), ou bien, deux concepts séparés.

Un premier exemple : un seul concept Décrire l’auteur (nom, prénom, sexe, années de naissance et de décès) et l’œuvre dans une table unique. AuteurŒuvre (N° AutŒv, nom, prénom, sexe, année N, année D, titre œuvre) Les descriptions risquent d’être redondantes et/ou incohérentes : N° AutŒv Nom Prénom Sexe Année N Année D Titre œuvre 1 Hugo Victor Mr 1802 1885 Les travailleurs de la mer 2 1804 1900 Les misérables Redondance Incohérence Règle fondamentale : une information (complexe ou non) ne doit pas être mémorisée plusieurs fois.

Un premier exemple : deux concepts La description d’un auteur est une information complexe et cohérente. La description d’une œuvre est une information complexe et cohérente. Donc, deux concepts séparés (deux tables), mais associés… Si le choix de gestion est, à 1 occurrence d’auteur correspondent N occurrences d’œuvre, à 1 occurrence d’œuvre ne correspond qu’1 seule occurrence d’auteur. Alors,  c’est une Association (1-N), appelée aussi, père/fils.  Un lien père/fils (père du côté 1 et fils du côté N).  Réalisé par le couple clef primaire (du père) / clef externe (du fils).

Un premier exemple : représentation graphique du schéma d’une table Plusieurs conventions possibles pour représenter le schéma d’une table. On représente une table par un rectangle. Auteur CP : N° auteur Sexe Nom auteur Prénom auteur Année naissance Année décès Nom de la table Clef primaire Liste des champs (attributs)

Un premier exemple : représentation graphique du lien logique Le lien logique est représenté par une flèche allant de la clef externe de la table fils à la clef primaire de la table père. Lien logique CP : N° auteur Sexe Nom auteur Prénom auteur Année naissance Année décès Auteur Œuvre CP : N° œuvre CE : Référence auteur Titre Clef externe

Un deuxième exemple (1/2) BD pour la gestion des commandes dans une entreprise : un client passe une commande ; une commande n’est passée que par un seul client ; la commande est constituée de plusieurs produits ; un produit peut être présent sur plusieurs commandes. Les concepts identifiés sans problème, Client : nom, adresse, etc. Produit : nom du produit, description, prix unitaire, etc. Commande : numéro, date, liste des produits commandés avec la quantité commandée pour chacun d’eux.

Un deuxième exemple (2/2) Les concepts Client, Produit et Commande sont des tables. Une association (1-N) entre Client et Commande.  un lien logique simple : clef primaire/clef externe.  la table père : Client.  la table fils : Commande. Une association (N-N) entre Commande et Produit.  Un lien logique simple (Clé primaire/Clé externe) ne peut pas décrire cette association.  Il faut donc « casser » cette association (N-N),  par deux associations (1-N),  par conséquent, ajouter une table de jonction…

représentation graphique Un deuxième exemple : représentation graphique Produit CP : Code produit Nom produit Description Prix Unitaire Client CP : N° client Nom client Adresse Quelle clef primaire pour cette table ? Commande CP : N° Commande CE : Réf Client Date commande Lien_Cde_Pdt CP : ? CE : Réf Commande CE : Réf Produit

clef composée pour Lien_Cde_Pdt Un deuxième exemple : clef composée pour Lien_Cde_Pdt Si une occurrence de Produit ne peut être associée qu’une seule fois à une occurrence de Commande,  Alors, clef composée des deux clefs externes. Produit CP : Code produit Nom produit Description Prix Unitaire Client CP : N° client Nom client Adresse Commande CP : N° Commande CE : Réf Client Date commande Lien_Cde_Pdt CP CE : Réf Commande CE : Réf Produit

clef autonome pour Lien_Cde_Pdt Un deuxième exemple : clef autonome pour Lien_Cde_Pdt Si une occurrence de Produit peut être associée plusieurs fois à une occurrence de Commande, Alors, on utilise une clef autonome. Produit CP : Code produit Nom produit Description Prix Unitaire Client CP : N° client Nom client Adresse Commande CP : N° Commande CE : Réf Client Date commande Lien_Cde_Pdt CP : N° ligne cde CE : Réf Commande CE : Réf Produit

allons un peu plus loin…(1/2) Un deuxième exemple : allons un peu plus loin…(1/2) On veut ajouter la quantité commandée de chaque produit à notre BD. Où placer le champ correspondant à la donnée Quantité commandée ?  La valeur de la quantité commandée dépend à la fois de la commande et du produit concerné.  Il faut placer le champ dans la table qui décrit l’association entre Commande et Produits. Règle : pour placer un champ dans une table (jonction), il faut qu’il dépende entièrement de sa clef primaire.

allons un peu plus loin…(2/2) Un deuxième exemple : allons un peu plus loin…(2/2) Produit CP : Code produit Nom produit Description Prix Unitaire Client CP : N° client Nom client Adresse Commande CP : N° Commande CE : Réf Client Date commande Lien_Cde_Pdt CP CE : Réf Commande CE : Réf Produit Quantité commandée