ACCESS SGBDR Relations Objets
Gestion de Fichiers données MS applications Independance enregistrement Programme: manipule une partie du fichier Sécurité d’accès, conservation
Accès MS applications 1 2n séquentiel applications MS 5 5 direct
Accès sélectif Suppose un identifiant CLE repérage effectué par l’adresse relative en accès direct: numéro d’ordre i x longueur organisation aléatoire: numéro paquet x taille paquet
Index Table(s) des matières du fichier associe à chaque clé l’adresse relative de l’enregistrement 1Accès index 2recherche sur la clé de l’enregistrement 3conversion adresse relative en absolu 4accès enregistrement 5transfert enregistrement dans zone utilisateur
système de gestion de fichiers utilisateurs LMD Programmes d’applications SGBD INTERNE SGBD EXTERNE
Hiérarchique Réseau Relationnel NAVIGATION MANIPULATION
Indépendance - Physique autant de représentations que de vues CA niveau opérationnel vente CA niveau décisionnel planification CA grandeur réelle devient une donnée élémentaire décrivant un évènement, dans un modèle informatique correspond à un assemblage synthétique
Indépendance Logique Chaque utilisateur assemble les données peut ne s’intéresser qu’à une partie client (code client, nom, adresse, date commande, type produit, montant) marketing: nom, adresse, date commande, type produit, financier: code client, montant
Efficacité Accès aux données en langage classique Partage des données Manipulation aisée par langage de requêtes
Cohérence Non redondance Contrôle de validité Administration centralisée des données
Sécurité Attribution des droits par propriétaire Gestion par administrateur Maintenance par administrateur
développeurs Interne/stockageConceptuel/interneExterne/conceptuel modèle Transformateurs Gestion BD Dictionnaire Données utilisateurs Décideurs INTERFACE Système stockage Prog. Appli. externe Gestion fichiers Adm appli. ManipulerManipuler ModeliserModeliser LMD LMC LDD
SGBDR Chaque famille d'événements est décrite par une relation. Une base de données est, de manière logique, un ensemble de relations dont l'utilisation doit permettre l'accès à tout objet à partir de n'importe quel autre.
SGBDR Le stockage des informations s’effectue sous forme de tableaux à deux dimensions, ces tables sont stockées de manière indépendante, sans lien physique
Vocabulaire Flux: une commande génère des flux. EVENEMENT: une commande est un fait apparent entraînant une réaction du système d’information Entité: représentation d’un objet auquel sont associés des attributs
Vocabulaire Propriété: attribut relatif à une entité Occurrence: valeurs d’éléments appartenant à une entité Relation: prise en charge d’une association entre des objets
niveaudomainedonnéestraitement ConceptuelGestion, décisionModèle Conceptuel de Données: MCD règle de gestion, dictionnaire données, dépendances fonctionnelles,… Modèle Conceptuel de traitement: MCT OrganisationnelOrganisationModèle Logique de Données: MLD Modèle Organisationnel de Traitement: MOT OpérationnelTechniqueModèle PhysiqueModèle Opérationnel
Fonctionnalité Soient deux entités différentes X et Y, alors une relation est de type: 1-1, si à toute occurrence de X correspond une seule occurrence de Y. Exemple: entre les entités Hommes et Femmes, la relation “ marié ” est règles sociétales 1-n, si à toute occurrence de X correspond une ou plusieurs occurrence de Y. Exemple: entre les entités livres et auteurs, la relation écrit par est 1-n, collectifs m-n, si à toute occurrence de X correspond une ou plusieurs occurrences de Y et réciproquement. Exemple: entre les entités client et commande.
Cardinalité La cardinalité minimale est le nombre minimal de fois où chaque occurrence d’une entité participe à une relation. La cardinalité maximale est le nombre maximal de fois où chaque occurrence d’une entité participe à une relation.
0,n Un homme est fils d’au moins une femme et d’au plus une femme, c’est à dire une seule. Une femme est mère d’aucun fils ou d’un ou de plusieurs. 1,1 Cardinalité Hommesfils deFemmes
Entitésenseignant, matière, classe Relation Enseigne Règles1 enseignant 1 ou m matières 1 matière n’existe pas ou 1 ou n enseignants 1 classe 1 ou n enseignants EnseignantMatières Classes 1, m 1,n 0,n 1,m Exemple cardinalités:
Dépendances fonctionnelles Soient deux propriétés a et b d’une même entité a__df____b, signifie que a détermine une et une seule valeur de b. Exemple: numéro matricule salarié________df________nom salarié Une dépendance fonctionnelle est dite élémentaire si aucune partie de a ne détermine b. Une dépendance fonctionnelle est dite élémentaire directe si b dépend fonctionnellement de a par une df élémentaire et si: a___df___b, / c a___df___c et c___df___b (pas de transitivité) Caractériser des relations pouvant être décomposées sans perte d’information
Couverture Minimale Ensemble C des DF élémentaires associées à un ensemble d’attributs vérifiant: -Aucune dépendance dans C n’est redondante -Toute DF élémentaire des attributs est dans la fermeture transitive (ensemble des DF E enrichi des DF E déduites par transitivité) de C
Graphe DF Relation VOITURE, MODELE Attributs: NumI, Coul, Type, Marque, Puis, DF: NumICoul, TypeMarque, TypePuis (Type, Marque)Puis
Graphe DF Puis # Type Type # Coul ces DF n’existent pas Attributs signifient assertions sur le monde réel, reliant les valeurs possibles
Graphe DF C ensemble des DF E, si tous les attributs à GAUCHE sont UNIQUES alors une visualisation de cet ensemble se fait à l’aide d’un graphe des DF C={NumIType; TypeMarque; Type Puis; NumI Coul} Puis Marque Coul Type NumI
Graphe DF Si tous les attributs à GAUCHE NE sont PAS UNIQUES alors une association d’arcs convergent vers un sommet Ex: CP (Code, Ville, Rue) DF(Ville, Rue)Code CodeVille Le graphe: Rue Ville Code
Formes Normales Clé Ensemble minimum d’attributs définissant tous les autres Première Forme Normale Si tout attribut contient une valeur atomique Deuxième Forme Normale Première Forme et tout attribut n’appartenant pas à la clé ne dépend pas seulement d’une partie de la clé
Exemple Fournisseur (Nom, Adresse,Produit,Prix) La clé est le couple souligné, les DF (Nom,Produit)- (Prix) et (Nom)- (Adresse) Nom détermine une partie n’appartenant pas à la clé Ce n’est pas une deuxième forme
R(Fournisseur) NomProduit Nomx1 Adresse1 Produit x Prix 1 Existe-t-il pour une valeur de la donnée colonne, une valeur unique de la donnée en ligne?
R(Fournisseur)NumFNomProduit NumFx1 1 Nom1x1 Adresse11 Produit x Prix 1
Produit définit Prix R(Fournisseur)NumFNomProduit NumFx1 1 Nom1x1 Adresse11 Produit x Prix 1 R(Fournisseur)NumFNomRef NumFx 1 1 Nom1x1 Adresse11 Ref x Libellé 1 Prix 1
Il existe des DF transitives - Plusieurs 1 dans une même ligne: Adresse avec NumF, Nom Cette DF est transitive, elle sera ôtée - Il n’existe pas de donnée D telle que NumF df D et D df Nom Cette DF n’est pas transitive, elle reste - Chaque attribut colonne IDENTIFIE une ENTITE
Fournisseur, Produit: Entités R(Fournisseur,Produit)NumFRef NumFx1 Nom11 Adresse1 Ref x Libellé 1 Prix 1
Si -les règles de gestion sont: Un fournisseur dispose de plusieurs produits, Un produit est vendu par un seul fournisseur -passer une commande induit les données: Numéro de Commande, Date de passation, Quantité, Prix total PTTC est une donnée calculée
Quantité n’est pas dans une DF
DF Composée -Quantité est définie par NumC et Ref NumC,Ref df Qt - Ref df Libellé, Ref df Pu, NumC df DatPas Il existe des DF transitives: - Ref df Nom, Ref df Adresse - NumC df Nom, NumC df Adresse
MCD Entités: - Déduites de la MATRICE des DF -Un ATTRIBUT COLONNE est CLE PRIMAIRE de l’Entité qu’il IDENTIFIE Associations: -Déduites des DF Composées -Reliées aux Clés Primaires respectives
Association Ligne de Commande Quantité Données sans DF dans la matrice Nom de l’association
Contrainte d’Intégrité Fonctionnelle -Lignes de la matrice des DF relatives aux CLE comportant des 1 impliquent une Contrainte d’Intégrité Fonctionnelle -Ex: Ligne de NumF, 1 dans la colonne NumC Traduit le fait que l’on ne peut passer une commande à un fournisseur non référencé
MOD 1,1 Pour Une Commande, il existe au minimum et au maximum Un Fournisseur 1,n Pour Un Fournisseur, il existe au minimum Une Commande et au maximum plusieurs 1,m Pour Une Commande, il existe au minimum Un Produit, au maximum plusieurs 0,p Pour Un Produit, il existe au minimum aucune commande et au maximum plusieurs
Fournisseur NumF Nom Adresse Produit Ref Libellé PU Ligne de Commande Quantité Passée à Commande NumC DatPas DatLiv PTTC? 1,n 1,1 1,m 0,p
Modèle Relationnel -Chaque ENTITE est modélisée en TABLE -Une ENTITE induit la création d’une relation avec CLE Primaire simple -Une ASSOCIATION implique la création d’une relation et CLE primaire Composée -Une CIF, la référence à une clé étrangère
Modèle Relationnel logique Produit (Ref, Libellé, Pu) Fournisseur (NumF, Nom, Adresse) Commande (NumC, DatPas, DatLiv) Ligne Commande (NumC,Ref, Qt)
Exemple La dépendance fonctionnelle par laquelle une propriété dépend d’une clé n’est pas forcément élémentaire ligne de commande: n°bon, réf, qté, libellé n°bon, réf est la clé car: n°bon, réfdfqté, libellé et n°bon/dfqté, libellé et réf/df qté,libellé
Formes normales Troisième forme normale Une relation est en deuxième forme Un attribut n’appartenant pas à une clé ne dépend pas d’un attribut non clé Alors toute décomposition préserve les DF et est sans perte
Exemple VoituresModèles Attributs Voitures: Numéro immatriculation, Type,Couleur, Attributs Modèles: Type, marque, Puissance Troisième forme Mais dans la relation Voitures (Numéro immatriculation, Type,Couleur, marque, Puissance) Si Numéro est seule Clé, les attributs marque et puissance dépendent transitivement par Type de la clé Donc cette relation n’est pas en troisième forme
DF code enseignant _______ code matière1 code matière________nom matière 2 code enseignant________nom matière3 1 et 2 sont directes, 3 ne l’est pas
Exemple Ligne de commande: n°bon, réf, qté, libellé n°bon, réfdf libellé n’est pas DFE car réf/df libellé
Commande concerne Produit Numco 1,n0,mRef,libellé Mais Client Codcli, nom… est 2FN Client Codcli, nom,codtype,nomtype… n’est pas 3FN transitivité Codcli, df codtype, codtype df nomtype
1,1 0, n Client appartient Type Codcli, nom,..codtype,nomtype Plus est fine la normalisation, moins sont présentes les redondances
nomlibellétypelongueurnaturerègle de calcul n°bonnuméro de bon Numérique5El date Numérique8Eljj/mm/aa codeclient Numérique6El, SIG adresse Alphanum érique 30SIG montant Numérique8CaQt*((Pu*( 1+t)) Dictionnaire de Données
UML Classe Modèle domaineLa classe est la structure d’un objet La classe d’une entité : Rectangle divisé en 3 parties Nom, Attributs, opérations Un élément de la classe, i.e. une ligne de la table, sera une instanciation Commande Client CoCl: integ ClAd: string …. Renvoyer Calculer CoNu: integ DatPas: date DatLiv: … 54
Client-Serveur SGBDR Processus répartition des partages Processus serveur BD Files d’attente 55
SGBDR ACCESS
ETATS : Afin d ’effectuer des regroupements Edition trier et grouper - Champ de regroupement - Propriétés du champ pied de groupe en-tête Choisir oui Si Chaque enregistrement (regroupement) doit apparaître sur une page différente Choisir avant section Oui avant section Oui Propriétés groupe saut avant section Ouiavant section Oui
Texte Aa ou étiquette En tête de page, par exemple ou tout endroit où doit être ce texte saisi Exemple: Nom du fournisseur Zone de texte ab| ou Champ contrôlé Dans la partie détail Récupération automatique d’occurrences Exemple: Code Produit
Réaliser un calcul: prix d ’une ligne - Insérer une Zone Texte, dans section détail - Saisir = puis générer l ’expression calcul: Somme([PRIX HT]*[quantité]) Réaliser un sous-total - Insérer une Zone Texte dans un pied groupe - Saisir = puis l ’expression - Si du texte fait référence à une occurrence Insérer une Zone Texte puis = suivi de l’expression:"à régler aux Ets " & [NOM FOURNISSEUR]
FORMULAIRES Création, Choisir la table ou requête ou état, les champs Zone Texte à insérer le type: simple (colonnes), tabulaire(lignes) Bouton, boîte outils Données source une macro ou procédure Exemple: Afficher les commandes passées à un fournisseur en..\donnees\master1.mdb..\donnees\master1.mdb ou \Mes documents\casCmdUtil.mdb\Mes documents\casCmdUtil.mdb
Macro commande simple Macro nouveau Choisir la commande Saisir les attributs Exemple: Clause WHERE pour afficher les commandes d ’un fournisseur [Formulaire]![NumFour]= [Comdetail]![NumFour]
Macros prédéfinies: Ouverture/ fermeture objets, impression, exécution de requête, vérifications des propriétés de contrôle, définition de valeurs, recherche, menu, information, renommer, recopier, supprimer, démarrer une application DOS. Exemple de boîte message: Afficher un message lors l’ouverture d’un état: Macro, nouveau choisir OuvrirEtat, Saisir nom état (arguments), BoîteMessage, saisir un commentaire, entrer le texte, pictogramme Enregistrer
MACROCOMMANDE 65
MACROCOMMANDE AVEC CONDITION 66