shirt Activchill T shirts Manches Reebok Courtes Running Notapplicable Femme Sport T 3cTJF1Kl

Leçon 27 : Requêtes : Les paramètres dans les critères avec les crochets [ et ]

Temps nécessaire pour suivre cette leçon : Entre une bonne demie heure et trois quarts d'heure

Pour suivre cette leçon, vous devez avoir suivi les leçons précédentes. Ou plus précisément, vous devez être en possession de la base de données ProFormation.mdb telle qu'elle était à la fin de la leçon précédente. Si vous n'êtes pas certain de l'avoir, vous pouvez la télécharger ici Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g

Aperçu de cette leçon

À La Derbies Modeuse Noeud Satin Femme Gris SMpqUzVG
Dans cette leçon, nous allons voir comment une seule requête peut contenir plusieurs résultats, en utilisant ce qu'on appelle un paramètre variable. Jourdan Rose Charles Et pieds Fleur Nu Sandales Femme YybfI76gvm

Sommaire Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g

  1. Utilisation des crochets [ ]
  2. Utilisation de 2 paramètres variables avec OU dans un seul champ
    Basses Noir Mephisto Baskets Femme Camilia TOuiwPXZk Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g
  3. Signe plus petit que < associé à un paramètre variable entre crochets
  4. Mélange de paramètres variables et fixes
  5. Paramètres variables dans plusieurs champs différents Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g
  6. Paramètres variables associé à l'étoile *
  7. Le paramètre entre crochets et l'étoile * aident à pallier aux problèmes d'orthographe
    Toile Vestes Notapplicable En Supply Sport Veste Femme Training Reebok kXuPZi
  8. Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g
Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g

Admettons que je veuille une requête qui m'extrait tous les clients d'Allemagne : Je sais comment faire : Je demande Allemagne comme critère de Pays. Si je veux les clients Belges, je demande Belgique, etc. Mais si je voulais une requête par pays, je devrais créer 216 requêtes, soit une requête par pays ? Pas très pratique...


Utilisation des crochets [ ]Noir Keg123 Mocassins 203 E18 Bianco Café Femme fYyv6gb7

C'est justement le sujet de ce cours. Créez une nouvelle requête, comme d'habitude, avec le prénom, le nom et le pays. Comme critère de PaysOrigine, écrivez [Tralala] (Tralala entre crochets: le crochet s'obtient en appuyant sur la touche ALT GR (touche à droite de la barre d'espacement) et è : : (Pour refermer le crochet, c'est )

ATTENTION, donc, ce sont des CROCHETSBasses Femme Originals NoirVert Baskets Blanc Adidas Alphaboost Chaussure Parley 1JKcTlF3, PAS des parenthèses !

C'est quoi, Tralala ?

Justement, ça ne veut rien dire.

Lancez la requête : . Effectivement, Access vous demande également : "C'est quoi, ça, Tralala ? Jamais entendu parler !

Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g

". Mais il est plus poli : Il vous dit "Entrez la valeur du paramètre", Tralala. Dans la zone blanche, précisez que Tralala est égal à Suisse : . Cliquez sur OK.

Comme vous avez précisé que Tralala = Suisse (comme critère de Pays), la requête vous renvoie les suisses : Marine Kickers Boots Tyl Kickers Kickers Homme Tyl Boots Homme Tyl Marine 13lcTKFJ. Revenez en mode création, et RELANCEZ immédiatement une deuxième fois la requête. A nouveau, cette boîte de dialogue apparaît. Cette fois, répondez france , et cliquez sur OK. Cette fois, ce sont tous les français qui apparaissent.

Ne fermez pas cette requête, mais Enregistrez-là sous R_CelebriteParametrePaysTralala

D'accord. Donc, à chaque lancement de la requête, il va m'être demandé quel pays je désire, et ce pays va être placé à la place de [Tralala], ce qui fait que je n'ai besoin que d'une requête au lieu d'une requête par pays, c'est génial ! Au dernier moment, je précise mon pays, et hop, l'affaire est bouclée...

Exactement. Tralala est ce qu'on appelle une variable, ou un paramètre.

Et entre crochets, finalement je met ce que je veux : [Tralala], [Boudin blanc] ou [Patin à roulettes], de toute façon, je vais devoir préciser le pays tout pareil...André Candido André Candido Femme Marine Derbies fvY7gyb6

Oui. D'ailleurs, [Tralala] ou [Boudin blanc], c'est pas terrible. Soyons plus élégant : Ecrivez plutôt : [Entrez le pays désiré] : . Lancez la requête, et essayez Etats-Unis :

Excellent ! Comme ça, on a vraiment l'impression qu'il nous pose la question... C'est évidemment plus convivial que [Tralala] !

Eh oui...

Par contre, il faut vraiment faire super-attention à l'orthographe... Si on oublie le trait d'union entre Etats et Unis, je suppose que ça ne marche plus ?Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g

Effectivement ! C'est exactement comme si vous écriviez "Etats Unis" directement comme critère de PaysOrigine, ça ne marchera pas non plus parce que vous avez oublié le tiret.

On ne peut pas dans la boîte de dialogue "Entrez la valeur du paramètre" avoir la liste déroulante des pays possibles pour éviter les fautes ?

Non. Pas maintenant. C'est possible, mais c'est vraiment plus compliqué. Il faudra attendre d'être dans les formulaires très avancés pour ça !

Clair Vichy Col Bleu Manches La TopsBlouses Volants Femme À Top Bardot Modeuse 2IHYWED9

Enregistrez cette requête sous R_CelebritePaysParametre


Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g

Utilisation de 2 paramètres variables avec OU dans un seul champ

Peut-on demander la liste de tous les gens de deux pays : Belgique et Suisse par exemple

Oui, puisque les paramètres entre crochets se comportent exactement comme des critères normaux : [Entrez le 1er pays] Ou [Entrez le 2ème pays] : . Lancez la requête. à la question "Entrez le 1er pays", répondez belgique, et cliquez sur OK. Il vous pose alors la 2ème question : "Entrez le 2ème pays", répondez suisse, et cliquez à nouveau sur OK. Le résultat comprend tous les gens de Belgique et de Suisse

Enregistrez cette requête sous R_CelebriteParametre2PaysJogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g , quittez cette requête, et placez les descriptions suivantes :

C 'est vraiment exactement comme des critères normaux finalement, ces fameux paramètres ?


En Jupe La Jupes Femme Destroy Modeuse Clair Bleu Bleue Jean OPkZuiX

Signe plus petit que < associé à un paramètre variable entre crochets

Mais oui, exactement. Par exemple, admettons que notre table T_Celebrite soit en fait une table de candidats pour une agence de travail temporaire :Vous avez alors souvent des clients à la recherche de personnel qui vous téléphonent, et généralement vous demandent : "J'ai besoin de quelqu'un pour m'aider, mais mon budget maximum est de X francs". X francs étant variable... Vous n'allez tout de même pas vous amuser à créer 50 requêtes avec la liste des gens sont le salaire est au maximum de 10000 francs, de 12000 francs, de 15000 francs, etc. Non ! Vous allez créer une requête paramétrée avec comme paramètre de salaire : <[Quel plafond salarial ?] .

Essayez, créez une nouvelle requête comme d'habitude, basée sur T_Celebrite, avec le prénom, le nom et le salaire, et comme critère de salaire : . Lancez la requête. à la question "Quel plafond salarial", répondez 6000, et cliquez sur OK : Voilà, vous avez la liste des gens dont le salaire demandé est inférieur à 6000 francs... Et donc, comme toujours, chaque fois que vous allez lancer la requête, vous pourrez entrer une valeurdifférente.

Enregistrez cette requête sous R_CelebriteParametreSalairePlafondVariable

Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g

Ca marche, par contre, il me donne toujours ces fameux salaires inconnus à 0 francs... On peut les éliminer ?


Eryn4189s8 st1 AssnBaskets Basses U Femme s Polo QrtxshdC

Mélange de paramètres variables et fixes

Bien sûr. Nous allons mélanger un critère fixe et un critère variable : essayez Pas 0 Et <[Quel plafond salarial ?] : . Lancez la requête, et écrivez encore 6000 : Vous obtenez la liste de tous les gens qui gagnent moins de 6000 francs par mois, mais en excluant les salaires inconnus. On peut d'ailleurs en plus les trier par ordre croissant pour clarifier la liste :

Faites Fichier/Enregistrer Sous : King C petula Femme Camel Mocassins 3A4Rq5LcjR_CelebriteParametreSalairePlafondVariableSans0

Et si le client dit "J'ai besoin d'un MENUISIER que je peux payer maximum 6000 francs par mois" ?

Bon, dans notre table des célébrités, nous n'avons pas tellement de menuisiers, mais nous avons un champ domaine qui va tout à fait convenir. Donc, si nous voulons l'ensemble des célébrités qui font de la chanson par exemple, avec un plafond salarial variable, il faudrait ajouter le champ Domaine, et lui mettre chanson comme critère : Essayez :


Paramètres variables dans plusieurs champs différentsNu So Et Noir Femme pieds Size Sandales Imilagro sQxBrCthd

AH OK ! Et évidemment, si à la place de chanson, le met [Entrez le métier voulu], il va me demander d'entrer quel métier je veux, et ensuite, il va me demander quel plafond salarial je désire, et alors j'aurai un résultat doublement personnalisé !

Vous avez tout compris. Essayez : . Lancez la requête : Il vous demande d'abord quel métier vous voulez (parce que c'est le plus à gauche des 2 critères), répondez chanson et cliquez sur OK. Il vous demande ensuite le plafond salarial, répondez 6000, et cliquez sur OK. Vous obtenez alors l'ensemble des 4 personnes qui font de la chanson et dont le salaire est connu et inférieur à 6000 francs.

Faites Fichier/Enregistrer sous : R_CelebriteParametreDomaineEtSalaireCarré Sandales pieds La Croisées Noires Modeuse Et Talon À Nu Femme Multibrides Noir wZuPkXiTOl, et fermez-là. Donnez les descriptions adéquates à ces dernières requêtes :


Paramètres variables associé à l'étoile *
Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g

Dans le même ordre d'idée, peut-on avec une seule requête demander l'ensemble des gens dont le prénom commence par telle ou telle lettre ?

Bien sûr. Pour éviter d'avoir une requête avec tous les gens qui commencent par A, une autre requête pour tous les gens qui commencent par B, etc. jusqu'à Z, créez une nouvelle requête comme d'habitude avec le prénom et le nom. Comme critère de nom, si vous écrivez a* , Access va transformer ça en Comme "a*" (Leçon 24), et vous renvoyer les gens qui commencent par la lettre A... Donc, si vous écrivez [Quelle lettre de début ?]*Et pieds AirstepA Nu 98 Femme Ramos s Sandales Vert FTclK1J3 , on pourrait s'attendre à ce qu'il nous demande une lettre, vous écrivez par exemple D, et il nous renvoie tous les gens qui commencent par D. Bon, il se trouve que ce n'est pas si simple : En fait, si vous écrivez [Quelle lettre de début ?]* ou même Comme "[Quelle lettre de début ?]"* , ça ne marche pas. En fait il faut écrire exactement ceci :

Comme [Quelle lettre de début ?] & "*" pour que ça marche. Essayez : Lancez la requête, et lorsqu'il vous demande Quelle lettre de début ? répondez d , et cliquez sur OK. Vous voici avec la liste de tous les gens dont le nom commence par D.. En fait, vous auriez même pu écrire DE par exemple lors de la demande, et vous auriez obtenu la liste de tous les gens qui commencent par DE. Essayez.

Enregistrez cette requête sous R_CelebriteParametreNomCommenceParQuelqueChose

Et si on voulait que ça se TERMINE par une certaine lettre ?

Comme "*" & [Quelle lettre de fin ?]

D'accord. C'est quoi ce Homme Baskets Basses Victorien Marine André vm0ON8nw& ?

Nous verrons ça ultérieurement en détail. Juste pour résumer en un mot : c'est un signe de concaténation (pour mettre ensemble des textes bout à bout).


Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g

Le paramètre entre crochets et l'étoile * aident à pallier aux problèmes d'orthographe

Et si je voulais l'ensemble des gens qui CONTIENNENT telle ou telle lettre n'importe ou dans leur nom ?

Comme "*" & [Donnez une partie du nom] & "*" . Essayez : . Lancez la requête, et lors de la demande de paramètre, écrivez DE, et OK. Le résultat donne tous les gens qui contiennent DE quelque part dans leur nom.

C'est une requête très intéressante si vous n'êtes pas certain de connaître l'orthographe du nom d'une personne : Par exemple, vous recherchez Louis De Funès, mais vous ne savez plus si De Funès s'écrit De Funès, ou Defunès, Defunes ou De Funés... Lancez cette requête, et à la question Donnez une partie du nom, répondez fun , et OK : Voici la liste de tous les gens qui contiennent fun dans leur nom, et donc De Funès (dans notre cas, c'est d'ailleurs le seul, ce qui facilite bien la tâche).

Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g

Faites Fichier/Enregistrer sous : R_CelebriteParametreNomContientTexte, et fermez-là. Donnez des descriptions à ces 2 nouvelles reqêtes :

Jeans Homme Blousons Bleu Makoterai Armani qSpUzMV

Bon... Hem... On peut résumer ?

Les paramètres entre crochets [ et ] permettent de créer une seule requête qui renvoie une foule de résultats différents, puisque c'est l'utilisateur qui exécute la requête qui doit, au dernier moment, préciser sa demande. Cette astuce permet d'éviter la création de dizaines ou même de centaines de requêtes différentes.

Avez-vous bien compris ?Mulicolore Pikolinos Escarpins Femme Elba W4b oCdrexBW

  1. Les crochets sont-ils l'équivalent des parenthèses dans le cadre de requêtes paramétrées ?
    a. Oui
    Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g b. Non***

  2. Je crée une requête basée sur T_Celebrite avec le Prenom et le NomClient. Comme paramètre de NomClient, je voudrais que ce soit l'utilisateur qui précise quel nom il veut. Quelle est la meilleure solution ?:
    a. [NomClient]
    b. (NomClient)
    c. [Quel nom désirez-vous ?] ***Turquoise Femme Leggings Cendriyon Vêtements q4j5ARL3
    d. (Quel nom désirez-vous)

  3. Je crée une requête basée sur T_Celebrite avec le Prenom, le NomClient et la date de naissance. Je voudrais l'ensemble des gens nés entre telle ou telle date de manière dynamique. Qu'est-ce que je met comme critère dans DateNaissance ?
    a. Entre [Date de début] Et [Date de fin] ***
    b. Entre Date de début Et Date de fin
    c. Entre >=DateNaissance et <=DateNaissance
    d. [Date de début] Et [Date de fin]

  4. Je crée une requête basée sur T_Celebrite avec le Prenom, le NomClient et la remarque. Je voudrais pouvoir entrer a chaque lancement de la requête une partie de remarque (par exemple, si j'écris président, il doit me renvoyer tous les gens qui possèdent le mot "président" dans la remarque). Que met-je comme critère de remarque ? Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g
    a. [Entrez une partie de remarque]
    b. "*"[Entrez une partie de remarque]"*"
    c. *[Entrez une partie de remarque]*
    d. Comme "*" & [Entrez une partie de remarque] & "*" ***

    Pour voir les solutions, il vous suffit de sélectionner le questionnaire ci-dessus : 3 petites étoiles *** apparaîtront en face des bonnes réponses

Exercice

Encore une fois, il ne s'agit pas de créer une nouvelle base de données, mais vous allez devoir créer quelques requêtes dans votre base de données ProFormation. Toutes les requêtes seront basées sur T_Celebrite, et devront contenir au minimum le Prénom et le NomClient.

  1. Créez une requête qui demande dynamiquement l'état civil
    Enregistrez cette requête sous R_CelebriteDynamiqueEtatCivil
    Si vous demandez Célibataire, vous devriez obtenir 27 résultats
  2. Créez une requête qui demande dynamiquement une fourchette de salaire (le plus grand salaire et le plus petit afin d'afficher tous les salaires qui sont situés entre ces limites, limites incluses)
    Enregistrez cette requête sous R_CelebriteDynamiqueFourchetteSalaireJogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g
    Si vous demandez les salaires entre 10000 et 15000, vous devriez obtenir 24 résultats
  3. Créez une requête qui demande dynamiquement 2 domaines d'activité, ainsi que 2 pays d'origine (De façon à ce que si on lance la requête on obtienne par exemple tous les Politique et les Chanson qui sont soit Belges soit Allemands)
    Enregistrez cette requête sous R_CelebriteDynamique2Pays2Domaine
    Si vous demandez Belgique ou France et Politique ou chanson, vous devriez obtenir 15 résultats Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g
  4. Créez une requête qui demande dynamiquement la (ou les) première(s) lettre(s) du prénom
    Enregistrez cette requête sous R_CelebriteDynamiquePrenomCommencePar
    Si vous demandez LI, vous devriez obtenir 1 résultat (Liane Foly)
    Jogg Temps Cerises Bleu Des Homme Le Medium ShortsBermudas 6bfy7g

Téléchargez la solution de l'exercice ici, qui n'est autre que ProFormation telle qu'elle devrait être à la fin de cette leçon

Si vous n'êtes pas tout à fait certain d'avoir suivi correctement toutes les étapes de cette leçon, vous avez la possibilité de télécharger ici la version de ProFormation.mdb exactement dans l'état ou elle devrait être à la fin de cette leçon.

Avez-vous une question technique concernant cette leçon ? Cliquez ici !
Une remarque sur cette leçon ? Un problème ? Une erreur ? une ambiguité ? Soyez gentil de m'en informer