Cours 1 : introduction Modèle entité-association Exemple : Deux entités (produit et dépôt) sont mises en relation (stock). Une entité doit être constituée d un identifiant et peut être complétée par des attributs, qui seront propres à l entité. La relation peut aussi contenir des attributs. Dimension et type Dimension Dans la pratique, les relations qu on nous demande sont binaires (deux entités sont mises en relations). Elles peuvent néanmoins être ternaires, quaternaires etc. Exemple de relation ternaire : Type Il existe trois types de relations : Relation 1-1 : à chaque patient correspond un seul dossier médical et à chaque dossier médical correspond un seul patient. Relation 1-N : à chaque employé correspond un seul département mais à chaque département correspondent plusieurs employés.
Remarque : avec cette notation, le sens de la relation n a pas d importance : on ne parle pas de relation N-1. Relation N-N : un produit peut être stocké successivement dans plusieurs dépôts et un dépôt peut contenir plusieurs produits Remarque : le type de notation ci-dessous peut apparaitre. La relation est ici notée (0,N)-(1,1). Cette notation correspond à la notation européenne. Elle est aisément transposable à la notation américaine habituellement utilisée. Ainsi, une relation de type (0,N)-(1,1) est en fait une relation 1- N. Il suffit de prendre le maximum de chaque groupe entre parenthèses. Exemples : (1,N)-(0,N) devient N-N, (0,1)-(1,1) devient 1-1 Marche à suivre pour réaliser un tel modèle 1) Faire la liste des entités 2) Pour chaque entité, a. faire la liste des attributs b. trouver un identifiant 3) Faire la liste des relations entre les entités 4) Pour chaque relation, a. Faire la liste des attributs b. Vérifier la dimension (binaire, ternaire ) c. Définir le type
Cours 2 : création de bases de données Traduction des entités en tables Cette opération est utile pour retranscrire les modèles entité-association sur Access. 1) Cas d une relation de type 1-N Dans ce cas, il faut tout d abord identifier le sens de la relation. Dans l exemple ci-dessous, un client peut passer plusieurs commandes mais une commande est associée à un client et un seul. On peut donc considérer que le client est en quelque sorte un attribut de la commande. On reporte donc l identifiant de l entité «client» (à savoir le code client) comme attribut de l entité «commande». Exemple : Commande (Numcom, datecom, montant, code client) Client (code client, nom, adresse) 2) Cas d une relation de type N-N Dans ce cas, il est nécessaire de créer une ligne contenant le nom de la relation et les identifiants des deux entités reliées. Exemple : Produit (code produit, libellé, prix) Dépôt (numéro dépôt, nom, adresse) Stock (code produit, numéro dépôt, quantité) 3) Cas d une relation de type 1-1 La principale solution est de reporter la clé (de la même façon que dans le cas 1-N). Exemple :
Patient (N SS, nom, prénom, numdossier) Dossier médical (numdossier, thérapie) Création d une table sur Access Une table se crée en allant dans l onglet Créer Table. Il faut ensuite passer du mode «Affichage» en mode «Création» et saisir les données de la table. Le type de données est nécessaire, il peut s agir de plusieurs choses : Texte Numérique NuméroAuto : un nombre qui sera défini automatiquement lors de la saisie d une donnée (utile lorsqu il s agit par exemple d un numéro de facture) Date/Heure Oui/Non Les propriétés du type de donnée offrent également la possibilité de créer un masque de saisie, de restreindre les possibilités de saisie («Valide si»), de définir des index (autoriser ou non les doublons) Création de relations entre tables La création des relations se fait dans l onglet «Outils de base de données» «Relations». Pour relier deux tables, il importe de reporter la clé de l une sur l autre (ainsi, dans l exemple cidessus, la clé «code vendeur» a été reportée sur la table clients pour relier les tables clients et vendeurs), selon les mêmes règles que lorsqu il s agissait de «traduire des entités en table» (p.3). Lorsqu une relation est de type N-N, il faut alors créer une table contenant le nom de la relation, ses attributs, et ne comportant pas de clé.
Cours 3 : création de requêtes Une requête permet de sélectionner des données que l on souhaite afficher provenant de une ou plusieurs tables. Onglet «Créer». Pour créer une requête, on passe par l outil «Assistant Requête» (Query Wizard) ou plus simplement par l outil «Création de requête» (Query Design). Les tables utiles à la requête doivent alors être reportées. Parmi ces tables, seules certaines données nous intéressent. Celles-ci doivent être extraites des tables dans la grille présente en dessous. Il s agit alors de déterminer (s il y a lieu) les critères liés à la recherche. Exemple : nous cherchons ici à recenser les factures émises entre le 10 et le 21 septembre 2008. Remarque : ces requêtes sont plus aisément exprimables grâce au bouton «Générateur». L outil requête offre également la possibilité de trier les données : Par ailleurs, Access autorise l utilisation de fonctions portant sur un champ mais effectuant un calcul sur l ensemble des valeurs prises par ce champ dans tout ou partie de la table. Ces fonctions permettent d obtenir des renseignements statistiques : moyenne, maximum, minimum, somme, nombre d enregistrements répondant à un critère.
Il faut pour cela activer l option «totaux» : Une ligne «opération» apparait alors sur la grille : La fonction Compte permet d'obtenir le nombre d'enregistrements répondant à un critère (à combiner avec des conditions de sélection). Par exemple, si on veut savoir combien de factures ont été émises entre deux dates. L'option Où permet de limiter les enregistrements sur lesquels portera l'opération. Par exemple, si l on ne veut voir apparaitre que les factures échues avant aujourd hui, on rentre l opération Où et on indique le critère «<Maintenant()» Il est également possible de supprimer des données que l on ne veut pas voir apparaitre lors de la requête : Il suffit alors de sélectionner les critères de suppression dans la ligne qui apparait :
Cours 4 : création d états Un état est un rapport ou une «sortie papier» d un certain nombre de données que l on cherche à trier. Fonctionnalités simples de l assistant Etat Il faut partir de l «Assistant Etat» (Report Wizard). L assistant propose alors de représenter l état en vertical ou tabulaire : Verticale : les champs sont affichés les uns en dessous des autres : Tabulaire : chaque enregistrement de la table est affiché sur une seule ligne. Pour un même champ, toutes les valeurs se trouvent donc dans une colonne. En tête de colonne est imprimé l intitulé du champ. L état s'affiche ainsi comme les données d'une table :
L assistant permet également d organiser la façon dont on fait apparaitre les données. Dans l exemple ci-dessous, les données «factures» sont triées par clients : Etat à partir d une requête Certains états peuvent être issus de requête (par exemple, si l on cherche à réaliser un état comprenant l ensemble des clients n ayant pas payé leurs factures à temps). Une fois la requête réalisée, on ne passe pas par l Assistant état mais directement par le bouton Etat.
Outils de création d états La fonction «Regrouper et trier» permet de regrouper des éléments qui se répètent. Par exemple, si une liste de factures s affichent, on peut choisir de regrouper les clients pour éviter que leur nom n apparaisse plusieurs fois. La fonction «Ajouter des champs existants» permet d ajouter des données qui n étaient pas présentes dans l état à l origine. Une étiquette est un texte fixe que l on peut rajouter en mode création. Il peut correspondre par exemple à un nouveau titre de colonne.
Cours 5 : les formulaires et les macros Un formulaire Access donne la possibilité d enregistrer des informations dans une base de données, de les afficher et de les imprimer. Il s agit d'une interface entre les structures de la base de données (tables, requêtes, programmes) et les utilisateurs. Il peut se présenter sous des formes variées (fiche, tableau, graphique). La réalisation d un formulaire peut se réaliser à l aide de plusieurs assistants : Assistant Formulaire (le plus adapté pour un formulaire simple) : Access vous guide dans la création du formulaire. Graphique croisé dynamique : permet d éditer des graphiques sur des données. Formulaire : pour obtenir immédiatement un formulaire reprenant l ensemble des champs. Il est également important de savoir utiliser la feuille de propriétés (property sheet). Les propriétés de données (onglet Data) qui suivent précisent l utilisation qui pourra être faite du formulaire. Quatre options sont prévues : Modif autorisée (Allow Edits): permet de préciser si un utilisateur peut modifier les enregistrements existants lorsqu il utilise le formulaire. Suppr autorisée (Allow Deletions): pour spécifier si un utilisateur peut supprimer un enregistrement lorsqu il utilise le formulaire. Ajout autorisé (Allow Additions) : permet de spécifier si un utilisateur peut ajouter un enregistrement lorsqu il utilise le formulaire. Entrée données (Data Entry): pour spécifier si les enregistrements nouvellement saisis sont accessibles (visibles). Data Entry n'a d'effet que Allow Additions est à Oui.
Pour obtenir des listes déroulantes de choix, on utilise l outil «zone de liste» dans le mode création : On obtient alors, en entrant des valeurs dans l assistant, un résultat de ce type : Pour créer un groupe d options, il faut utiliser l outil «Contrôles» en mode création : Ce qui donne un résultat comme suit : En insérant des zones de textes, il est également possible de créer des formules qui permettront par exemple, de calculer automatiquement pour chaque facture, la somme des paiements effectués.