Présentation
Une requête permet d'interroger et de manipuler des données. Une requête est codé en SQL (), mais grâce à l'interface graphique de type QBE () d'Access, nous n'avons pas besoins de saisir ce code SQL : les manipulations graphiques sont traduites en SQL. En mode Création de requête, on choisit les tables et les champs que l'on souhaite afficher dans le résultat. On met en place également des filtres et des tris. En mode Affichage de requête, le résultat d'une requête se présente exactement comme une Table, avec ses lignes et ses colonnes. Aucune donnée n'est stockée dans la requête, seul le code SQL est stocké. Supprimer une requête revient donc à supprimer ce code SQL, et en aucun cas des données. Le langage SQL permet également de créer des tables, des index et des champs, ce que l'on appelle la partie LDD (Language de Définition de Données). Access permet de réaliser ces opérations dans un einterface graphique, nous n'abordons donc pas cette partie ici. Cf. la . Manipulations
Création d'une requête
Onglet Créer > Création de requête Dans la boite Afficher la table, double-clic sur les tables que l'on souhaite ajouter, puis Fermer. Vous pouvez aussi faire glisser les tables ou les requêtes depuis le volet Base de données (à gauche de l'écran)
Choisir le type de requête (Cf. infra). Faire glisser les champs depuis une table OU sélectioner un champ dans la grille sur la ligne Champs. Ligne Tri de la grille : sélectionner Croissant ou Décroissant ou (non trié) Ligne Afficher : cocher pour afficher le champ dans le résultat de la requête Ligne Critère : saisir une . Afficher le résultat de la requête, en cliquant sur le bouton Affichage : Revenez au Mode Création en cliquant sur le bouton Création : Enregistrer la requête (CTRL + S) Gestion des requêtes
Pour ouvrir une requête en affichant immédiatement le résultat, double-cliquer dessus (ou Entrée)
Pour ouvrir une requête directement en mode Création, Clic droit > Mode Création (ou CTRL + Entrée)
Pour renommer une requête, la fermer puis Clic droit > Renommer (ou F2)
Pour supprimer une requête, la fermer puis Clic droit > Supprimer (ou Suppr)
Modes d'affichage
Le bouton Affichage (onglet Accueil) affiche 3 modes d'affichage.
Le Mode Feuille de données affiche le résultat de la requête. Le Mode SQL affiche le code SQL de la requête. Bien que la plupart des manipulations de requêtes puissent être faites sans modification du contenu, il peut parfois être plus pratique de modifier directement le code SQL. Le Mode Création permet d'accéder à l'interface QBE de modification de la requête. Un clic sur le bouton Affichage permet de basculer entre le Mode Feuille de données et Mode Création.
Sources d'une requête
Une requête peut avoir pour source :
plusieurs autres requêtes des tables et des requêtes Relations entre source
Quand une requête a plusieurs tables/requêtes comme source, des relations doivent être prévues entre ces objets.
Relations exitantes
Si une relation existe entre 2 tables (créée préalablement dans la fenêtre ), celle-ci s'affiche automatiquement. Créer une relation ad hoc
Il est possible de créer une relation ad hoc en faisant glisser un champ d'une table vers le champ d'une autre table.
La relation crée dans la requête n'existe que dans la requête.
Double clic sur la relation pour modifier les . Touche Suppr pour supprimer la relation. Les différents types de requêtes
Deux types de requête Sélection :
Quatre types de requêtes Actions :
Requête Création de table Requête Sélection
Une requête Sélection permet de sélectionner des données à afficher, grâce à des critères de filtres. Par exemple, on veut tous les clients dont le champ Ville est égal à LILLE.
Dans d'autres logiciels, ce type de requête se nomme Vue (ou View).
Quand on ouvre une requête Sélection, les données sont interrogées et on voit le résultat de la requête. Si la source n'est pas accessible, une erreur se produit (par exemple si une table a été renommée).
Changements dans les données source d'une requête
Dans les tables interrogées dans la requête
Le résultat de la requête affiche :
Expressions dans les requêtes
Dans Access, on peut écrire les fonctions en anglais et en français.
Si vous écrivez Left dans une expression, Access utilisera le nom en français (Gauche). Certains fonctions sont très fastidieuses à écrire en français (accent circonflexe par exemple), préférez les écrire en anglais (Instr au lieu de DansChaîne, Mid au lieu de ExtracChaîne) Dans le code SQL, la fonction est toujours en anglais. Cf. la , l’, l'aides des et (en anglais car mal traduit). On peut écrire une fonction dans la ligne Champ et dans la ligne Critère, comme par exemple :
Ici on souhaite extraire les lignes dont l'année du champ Date est supérieure à 2009.
Alias de champ
Dans une requête, on peut placer à gauche d'un nom de champ un nom suivi de deux-points, comme dans cet exemple :
affichera :
Alias de requête et Légende de table
Dans une table Access, vous pouvez définir une légende, qui s'affichera à la place du nom du champ dans les formulaires et les états, mais aussi dans les feuilles de données de la table et des requêtes utilisant le champ.
Quand vous utilisez une requête dans une autre requête, dans un formulaire ou dans un état, la légende s'affichera, même si vous avez défini un alias dans la requête, comme ici où nous avons une Légende Nom et un alias Nom2 :
Quand vous utilisez une requête dans un autre logiciel, comme Excel, il affichera toujours l'alias (ou le nom du champ si aucun alias n'a été défini. Dans cette exemple, on a défini une légende sur Nom et un alias sur Nom2. Seul l'alias s'affichera dans Excel :
Requête Analyse Croisée
Activation
Dans une requête en mode Création, menu Créer (Outils de requête) > Analyse croisée.
Dans la grille s'affiche une ligne Analyse.
Mise en oeuvre
Dans la grille, s'affiche une ligne Analyse. Une requête Analyse croisée a besoin :
au moins un champ en En-tête de ligne, un champ en En-tête de colonne, Requête Action Création de table
Activation
Dans une requête en mode Création, menu Créer (Outils de requête) > Création de table.
Sélectionner ou saisir un nom de table dans la boîte Création de table qui s'affiche, puis valider. Ce peut être le nom d'une table existante (sera écrasée dans ce cas) ou d'une nouvelle table.
Mise en oeuvre
Dans la grille, créer une requête Sélection "normale". Puis exécuter la requête par Créer (Outils de requête) > Exécuter. A chaque exécution, la table destination de la requête est supprimée.
Requête Action Mise à jour
Une requête Mise à jour agit exactement comme un Rechercher/Remplacer.
Activation
Dans une requête en mode Création, menu Créer (Outils de requête) > Mise à jour.