Base de données relationnelle sous Microsoft Access

En informatique, une base de données relationnelle est un stock d’informations décomposées et organisées dans des matrices appelées relations ou tables conformément au modèle de données relationnel. Le contenu de la base de données peut ainsi être synthétisé par des opérations d’algèbre relationnelle telles que l’intersection, la jointure et le produit cartésien.

Le design est important

  • Pour comprendre le design et la création de bases de données relationnelles, il faut utiliser les outils appropriés. Il existe de nombreux livres et sites Web sur le sujet.Pour cette partie du cours nous utiliserons l’information fournie dans l’Aide d’Access et nous étudierons la base de données COMPTOIR.MDB qu’on trouve dans le répertoire Exemples d’Access.

Design relationnel

  • Ce n’est pas toujours pratique de garder toutes les données dans une table
  • Par exemple: dans BOTTIN, si on veut le nom du programme, la durée du programme et le nom du coordonnateur en plus du numéro de programme, on pourrait modifier la table ETUDIANTS comme illustré:

Et lorqu’on entrera des données dans la table, il faudra noter à chaque fois le nom du coordonnateur, le nom du programme, etc.; si on a 200 étudiants dans un programme ces informations seront enregistrées 200 fois (toutes écrites exactemment de la même façon à chaque fois ???); éventuellement, la table aurait l’air de ceci:

  • En plus de répèter des centaines de fois des informations inutiles, on risque d’introduire des erreurs à chaque entrée
  • Voici quelques points tirés du document “Designing a Database” de Microsoft:
    Étapes de la conception d’une base de donnéesVoici les étapes du processus de conception de base de données. Première étape: Déterminer le but de votre base de données. Cela vous aidera à décider quels faits vous voulez que Microsoft Access pour stocker. Deuxième étape: Déterminer les tables dont vous avez besoin. Une fois que vous avez un objectif clair pour votre base de données, vous pouvez diviser vos informations dans des sujets distincts, tels que les «employés» ou «ordres». Chaque sujet sera une table dans votre base de données. Troisième étape: Déterminer les domaines dont vous avez besoin. Décidez quelles sont les informations que vous souhaitez conserver dans chaque tableau. Chaque catégorie d’informations dans un tableau est appelé un champ et s’affiche sous la forme d’une colonne de la table. Par exemple, un champ dans une table Employees pourrait être Nom de famille, un autre pourrait être Date d’embauche. Quatrième étape: Déterminer les relations. Regardez chaque table et de décider comment les données d’une table est liée aux données d’autres tables. Ajouter des champs aux tables ou créer de nouvelles tables de clarifier les relations, le cas échéant. Cinquième étape: Affiner votre conception. Analyser votre conception d’erreurs. Créer les tables et ajouter quelques enregistrements de données d’échantillon. Voyez si vous pouvez obtenir les résultats que vous voulez de vos tables. Faire les ajustements à la conception, au besoin. Ne vous inquiétez pas si vous faites des erreurs ou laisser les choses hors de votre conception initiale. Pensez-y comme un brouillon que vous pouvez affiner ultérieurement. Expérimentez avec les données d’échantillons et des prototypes de vos formulaires et rapports. Avec Microsoft Access, il est facile de modifier la conception de votre base de données que vous le créez. Cependant, il devient beaucoup plus difficile d’apporter des modifications aux tables après ils sont remplis avec des données et une fois que vous avez construit formulaires et rapports. Pour cette raison, assurez-vous que vous avez une conception sonore avant de pousser trop loin. Problèmes de conception communs Il ya plusieurs points communs que vous pouvez rencontrer lors de la conception de votre base de données. Ces problèmes peuvent causer à vos données d’être plus difficile à utiliser et à entretenir. Ce qui suit sont des signes que vous devriez réévaluer votre conception de base de données: Vous disposez d’une table avec un grand nombre de domaines qui ne se rapportent tous au même sujet. Par exemple, une table peut contenir des champs relatifs à vos clients ainsi que des champs qui contiennent des informations sur les ventes. Essayez de vous assurer que chaque table contient des données sur un seul sujet. Vous avez des champs qui sont intentionnellement laissée en blanc dans de nombreux enregistrements parce qu’ils ne sont pas applicables à ces dossiers. Cela signifie généralement que les champs appartiennent à une autre table. Vous disposez d’un grand nombre de tableaux, dont beaucoup contiennent les mêmes champs. Par exemple, vous avez des tables distinctes pour les ventes de janvier et février, les ventes ou pour les clients locaux et les clients distants, dans lequel vous stockez le même type d’informations. Essayez de consolider toutes les informations relatives à un sujet dans un seul tableau. Vous pouvez aussi avoir besoin d’ajouter un champ supplémentaire, par exemple, pour déterminer la date de vente.

Normalisation

  • La solution aux problèmes enumérés ci-haut est un processus qui s’appelle normalisation
  • Il y a plusieurs degrés de normalisation mais, à son plus simple, de façon intuitive, il s’agit tout simplement de créer deux tables et d’établir une relation entre les deux
  • La normalisation se fait d’abord sur papier – il faut savoir quelles tables on veut créer et les champs qu’on veut garder
  • I y a des outils informatisés pour faire la modélisation et la normalisation – des “Modeling tools” – par exemple, App Modeler de Sybase

Exercices à faire en classe

  • Dessiner le modèle relationnel pour le cas de l’Hopital
  • Dessiner le modèle relationnel pour le cas de Sports
  • On veut modéliser le processus de vente chez un détaillant d’automobiles. Quelles sont les informations dont on pourrait avoir besoin?