Bienvenue

Dans cette partie, nous allons manipuler Microsoft Access©. Nous allons voir comment visualiser un schéma relationnel, avant de voir comment réaliser une requête QBE et regarder sa traduction dans le langage SQL. Bref, cette partie contient tous les outils pour réussir votre le premier TP qui vous sera proposé à l'IUT.

Si vous souhaitez suivre correctement cette partie du tutoriel, nous vous conseillons de télécharger notre base de données Access© en cliquant ici, ou en vous rendant dans la partie "Téléchargements" de notre site.

Accès direct :

  1. Ouvrir une base de données sous Access©
  2. Visualisation d'un schéma de relation
  3. Faire un requête QBE
  4. Rapprochement entre les requêtes QBE et les requêtes SQL

1. Ouvrir une base de données sous Access©

Dans cette sorte d'introduction, nous allons voir comment charger notre base de donnée sous Microsoft Access© afin de pouvoir travailler dessus.

Sous Microsoft Access©, une base de données est stockée dans un fichier portant l'extention .mdb. Il faudra donc charger le fichier comme n'importe quel logiciel le fait.

Il vous suffit de dc soit de cliquer sur l'icône en forme de dossier dans la barre "base de données", soit de suivre le chemin suivant : fichier --> ouvrir

charger une base de données

Une fenêtre s'ouvre donc. En cliquant sur l'onglet "Tables", vous pouvez voir s'afficher le nom des différentes tables de cette base de données.

base de données mmorpg

Haut de page


2. Visualisation d'un schéma de relation

Il existe deux façons de visualiser le schéma relationnel.
La première consiste à cliquer sur l'icône de la barre "base de données" représentant trois tables liées entre elles, tndis que la deuxième est de passer par le menu "Outils" puis cliquez sur "Relations".

ouvrir schéma relationnel

Voici donc le schéma relationnel qui devrait s'afficher à l'écran :

shema relationnel

Pour être sûr que vous le comprenez bien, voici un petit texte descriptif :

Les clefs primaires de ce schéma relationnel apparaissent en gras tandis que les CIR sont matérialisées par les relations portant des cardinalités (1 ou ∞). Ces relations signifient qu'une valeur de la clef étrangère est liée à une seule valeur de la clef primaire (tandis qu'une valeur de la clef primaire peut-être liée à plusieurs valeurs de la clé étrangère). Pour plus de détails et d'explication, nous vous invitons à jeter un oeil au tutoriel portant sur le langage SQL.

Par exemple la relation suivante :

Contrainte d'intégrité reférencielle

Celà signifie qu'une classe qu'une classe peut avoir plusieurs aptitudes alors qu'une aptitude est caractérise une et une seule classe. En effet, la CIR est parfaitement respectée dans le cas du jeu d'essai suivant :

Table aptitude

Sachez également qu'il est tout à fait possible de changer la disposition du schéma relationel à votre guise sur l'espace qui lui est réservé smiley.

Haut de page


3. Faire un requête QBE

Une requête QBE c'est quoi ?
Le langage QBE est un concurrent au langage SQL. Il permet de concevoir des requêtes sur des bases de données en passant par une interface graphique. Cette interface graphique permet de faire des requête sans jamais écrire de code.

Pour visualiser cette interface graphique, il vous suffit de cliquer sur l'onglet "Requêtes" de votre base de données. Cliquez ensuite sur "nouveau". A l'ouverture de la nouvelle boite de dialiogue, cliquez sur "Mode Création" puis confirmer votre choix en cliquant sur "OK".

vers le QBE

Après la validation de votre choix, vous devriez normalement voir s'afficher à l'écran une fenêtre vous permettant de faire des requêtes QBE.

Ecran requête QBE

Cette fenêtre peut-être séparée en 2.
La partie supérieure est destinée à indiquer les tables qui sont utilisées pour la requête en cours alors que la partie inférieure est utilisée pour décrire les attributs et les contraintes utilent à la bonne exécution de la requête.

Voici une requête QBE exécutée via l'interface pour bien vous montrez la distinction entre les deux parties de la fenêtre.

Ecran requête QBE bis

Dans la suite de ce tutoriel, nous allons voir en détails comment marche les requêtes QBE. Pour celà, nous allons travailler sur des requêtes simple et utiliser les 2 tables qui nous renseignent sur les montures.

Nous allons essayer de modéliser la requête suivante : Pour les montures vertes, donner leur numéro et leur type..

La toute première chose à faire lorsqu'on fait une requête QBE, c'est de sélectionner les tables nécessaires. Dans notre cas, il s'agit des tables Monture et TypeMonture. En effet, dans la requête que nous devont exécuter, nous avons besoins des numéros des montures (NumMonture), de leur couleur (qui sont tous les deux des attributs de la table Monture), ainsi que des types de monture (NomTypeMonture) (qui est un attribut de la table TypeMonture).

La première chose à savoir est qu'une colonne est réservée à un et un seul attribut d'une et une seule table.

Nous pouvons donc passer maintenant à la partie inférieur de l'écran. La première chose à savoir est qu'une colonne est réservée à un et un seul attribut d'une et une seule table.

La première étape consiste à remplir la première ligne. Il faut donc que nous remplissions les cases champ. Ces cases sont destinées à accueillir les attributs qui sont utiles à la bonne exécution de la requête. Il faut donc commencer par répertorier les attributs qui vont nous servir afin d'éxécuter la requête demandée. Puisque nous avons déjà fait ce travail afin de déterminer les tables à sélectionner, nous savons déjà que les attributs qui doivent être placé dans les cases Champ sont NumMonture, NomTypeMonture et Couleur.

Passons maintenant à la case Table. Cette case sert tout simplement à visualiser la table à laquelle l'attribut sélectionné dans la case champ appartient.

Cette case permet entre autre de voir si l'attribut sélectionné est la clef primaire d'une table ou la clef étrangère d'une autre. Ici, nous ne pouvons pas nous tromper puisque chacun des attributs sélectionnés pour la requête apparaît dans une seule table.

Si vous avez fait les choses correctement, vous devez avoir la fenêtre suivante sous les yeux.

Requête QBE étape 1

Passons maintenant à la ligne suivante. Il s'agit de la ligne Tri. Cette ligne permet de trier les résultats de notre requête suivant un ordre croissant ou décroissant.

Nous allons choisir ici de trier le résultat de notre requête par odre alphébétique. Pour celà, il faut donc que dans la colonne consacrée à l'attribut NomTypeMonture, la case Tri affiche le mot croissant (si nous avions voulu afficher les NomTypeMonture dans l'ordre inverse, nous aurions choisi le mot décroissant).

Vous devriez obtenir la fenêtre suivante.

Requête QBE étape 2

La ligne suivante est la ligne Afficher. Cette ligne permet de déterminer les attributs qui seront affichés dans le resultat de la requête. Le but de la requête étant de donner le numéro et le type des montures, nous allons donc cocher les cases des attributs et seulement de des attributs : NumMonture et NomTypeMonture. Il faut donc décocher la case Afficher de l'attribut Couleur puisque celui-ci permet uniquement de réaliser la condition de la requête.

Requête QBE étape 3

La dernière étape consiste à remplir la case Critères. Si les critères des différents attributs sont positionnés sur la même ligne, ils sont implicitement liés par l'opérateur ET tandis que les critères positionnés sur des lignes différentes sont liés par l'opérateur OU.

Dans la requête que nous cherchons à exécuter, la seule condition que nous cherchons à remplir est la couleur de la monture. En effet, l'attribut Couleur doit être égal à vert. On va donc tout simplement écrire blanc dans la case Critères de l'attribut Couleur. A noter que Microsoft Access© met automatiquement des guillemets autour du mot (et non des apostrophes comme le veut la norme SQL).

Avant de lancer l'exécution de la requête, vérifier que votre fenêtre ressemble bien à celle ci-dessous.

Requête QBE étape finale

Nous allons maintenant lancer l'exécution de la requête. Pour ce faire, il suffit de cliquez sur le ! de la barre de requête, ou en passant par le menu Requête puis en cliquant sur Exécuter.

Exécuter une Requête QBE

Après avoir exécuter la requête, une nouvelle fenêtre s'ouvre avec le résultat de la requête.

Resultat d'une Requête QBE

C'est bien le résultat que nous attendions et que nous aurions obtenu si nous avions fait cette requête "à la main" en regardant direcetement le jeu d'essai de notre base de données disponible ici.

Pour revenir à l'écran de la requête, il suffit de cliquer sur le bouton représentant une petite équerre dans la barre de requête, ou en cliquant sur Mode Création du menu Affichage

Retour au Requête QBE

Nous allons maintenant essayer de modéliser la requête suivante : Donner les numéros des comptes qui jouent les personnages Aragorn_du_78, Legolas1234 et Pouvoir_aux_pommes.

Si vous prenez le temps d'appliquer le même raisonnement que précédemment, votre requête devrez ressembler à ça :

les doublons en QBE

Exécutons maitenant la requête. Voilà ce que nous obtenons.

les doublons en QBE

Nous obtenons ce que l'on appelle un doublon. En effet, obtenir plusieurs fois de compte n°1 ne sert à rien. Nous allons donc maintenant voir comment éviter l'affichage de ces doublons.

Pour celà, il suffit de revenir au Mode création de la requête et de faire un clic droit sur la fenêtre. Sélectionnez Propriétés... et dans la nouvelle fenêtre qui s'ouvre, mettez Oui dans la case Valeurs distinctes.

les doublons en QBE

Si l'on exécute de nouveau de la requête, nous obtenons bien le même résultat que précédemment, les doublons en moins.

les doublons en QBE

Haut de page


3. Rapprochement entre les requêtes QBE et les requêtes SQL

Nous allons voir dans cette partie que dans le fond, les requêtes QBE et les requêtes SQL ne sont pas si différentes que ça. En effet, les requêtes QBE sont des requêtes SQL sauf que c'est dernière permettent à l'utilisateur de ne pas taper directement le code puisqu'il est possible de passer par cette interface graphique.

Cependant, il est possible de voir le code SQL des requêtes QBE. Pour celà, lorsque vous êtes à l'écran de la requête, il suffit de faire un clic droit, puis de cliquer sur Mode SQL.

Si l'on considère la requête précédente, voici ce que nous obtenons.

Code SQL

De ce code, nous pouvons facilement faire un rapprochement entre les requêtes SQL et les requêtes QBE.

Ainsi :

Il est également possible d'écrire sa requête en SQL. Elle sera automatiquement traduite par Microsoft Access© en une requête QBE.

Si vous avez des difficultés à comprendre les notions de SQL, nous vous invitons à lire le tutoriel de ce langage en cliquant ici.

Haut de page


Vous voilà maintenant prêt à utiliser Microsoft Access© ! Vous pouvez retrouvez un gros résumé de l'utilisation de l'interface de ce logiciel en annexe de ce tutoriel ou en cliquant ici.

Pour vous entrainez, n'hésitez surtout pas à faire le TP !

Haut de page