Vous êtes sur la page 1sur 31

Access 2002

Cliclasolution

Anne 2006/2007

REQUTES
Utilit des requtes
QUESTIONNER LA BASE DE DONNES
La fonction classique d'une requte est de rpondre une question sur la base de
donnes. "Quels sont les clients habitant Marseille ?", ou "Quel est le chiffre
d'affaires par catgorie de produits ?" sont des exemples typiques de requtes.

REQUTES ET FORMULAIRES OU TATS


Il est possible de crer des formulaires ou des tats partir de requte.

Crer une requte


nNe gardez que la fentre Base de donnes ouverte.
nCliquez sur bouton Requte.
nCliquez sur le bouton Nouveau puis slectionner Mode cration.
Une requte en mode cration apparat, ainsi qu'une bote de dialogue permettant de
choisir les tables ou les requtes servant construire la nouvelle requte.

Choisir les tables ou les requtes


Pour construire une requte, il faut d'abord indiquer o se trouvent les donnes qui
nous intressent, dans quelle table ou dans quelle requte.
Cette bote de dialogue permet de faire son choix entre la liste des tables, des
requtes, ou la liste des deux.

64

Access 2002

Cliclasolution

Anne 2006/2007

Cliquez sur Clients puis sur Ajouter, cliquez sur Commandes puis sur
Ajouter, puis sur Fermer.

Les tables sont dans la partie suprieure de la fentre de requte.

Ajouter une table


nCliquez sur le bouton
nCliquez sur Dtail des commandes puis sur Ajouter et Fermer.

Ajouter des champs


Vous avez choisi les tables, il faut maintenant indiquer quels sont les champs qui vous
intressent.
La requte suivante (une partie des enregistrements est affiche) donne la liste des
articles commands, en affichant les champs Raison sociale, Numro de
commande et Rfrence article.

65

Access 2002

Cliclasolution

Anne 2006/2007

Pour ajouter des champs, vous pouvez les attraper et les placer la souris. Une
autre mthode consiste faire un double-clic sur le champ qui vous intresse.
n Double-cliquez sur le champ Raison sociale (table Clients), puis sur le champ
Numro de commande (table Commandes).
n Enfin double-cliquez sur le champ Rfrence article (table Dtail des
commandes).

nPour afficher le rsultat : cliquez sur le bouton mode feuille de donnes

Supprimer tables ou requtes de la requte


nCliquez sur

pour passer en mode cration.

n Choisissez Edition Supprimer.

Supprimer des champs

66

Access 2002

Cliclasolution

Anne 2006/2007

nChoisissez dition Supprimer colonne.


dition Effacer contenu grille supprime tous les champs. Vous pouvez galement insrer
ou supprimer des lignes dans la partie infrieure avec Edition Insrer ligne ou Edition
Supprimer ligne.

n Ajoutez les champs Numro de commande et Date de commande en doublecliquant dessus.

Crer ou supprimer des liaisons


Les liaisons entre les tables apparaissent automatiquement (elles sont
reprsentes par les traits reliant les tables). Parfois, aucune liaison n'apparat, par
exemple lorsque la requte est construite partir de deux requtes. Dans ce cas, il
faut crer manuellement la liaison.

67

Access 2002

Cliclasolution

Anne 2006/2007

Appuyez sur la touche Suppr, la relation est supprime.

La relation est cre.

Proprits des liaisons


n

Cliquez sur le bouton

pour afficher la requte en mode feuille de donnes.

Examinez le rsultat. Seuls les clients qui ont effectivement pass commande sont
slectionns. Les autres, comme le client BBL ILLIMITED, par exemple,
n'apparaissent pas.

68

Access 2002

Cliclasolution

Anne 2006/2007

Pourquoi ? Parce qu'Access affiche l'enregistrement d'une table (Clients) que s'il
trouve un enregistrement correspondant dans l'autre table (Commandes), or il n'y a
pas de commande pour le client BBL ILLIMITED.
Si par extraordinaire, il y avait des commandes sans client, elles n'apparatraient
pas non plus, puisque Access ne trouverait pas d'enregistrement correspondant
dans la table Clients.
nCliquez sur le bouton

pour mettre la requte en mode cration.

Cliquez sur le trait de liaison entre les deux tables, pour slectionner la liaison.

Choisissez Proprits de la jointure...


La fentre des proprits de la jointure s'affiche. L'option 1 est slectionne
par dfaut. Prenez le temps de lire les options.
Nous allons demander l'affichage de tous les enregistrements Clients, qu'ils
aient command ou pas.

Choisissez l'option 2 et cliquez sur OK.


Le dessin de la liaison reflte sa nouvelle proprit.

Mettez la requte en mode feuille de donnes, en cliquant sur

Le client BBL ILLIMITED apparat. Comme il n'a pas command, les champs Numro
de commande et Date de commande sont vierges.

Apparence d'une requte


CHANGER LE TITRE DES COLONNES

69

Access 2002

Cliclasolution

Anne 2006/2007

Vous pouvez spcifier un titre de colonne pour les champs de la requte. Il suffit de
taper le titre suivi de deux points (:) juste avant le nom du champ, sur la ligne
Champs.
Par exemple, saisir N o m d u c l i e n t : juste devant le nom de champ Raison sociale
changerait le titre de la colonne en mode feuille de donnes.

Trier les donnes

Trier les donnes signifie dcider de l'ordre dans lequel elles apparatront. Dans la
table Clients, les donnes sont tries par numro client, cl primaire. Vous allez crer
une liste donnant la raison sociale et le numro de client, trie par ordre alphabtique
sur la raison sociale.
nCliquez sur le bouton

pour mettre la requte en mode cration.

nCliquez sur la table Commandes et choisissez Edition Supprimer.

nAjoutez le champ Numro client en double cliquant dessus.


nCliquez sur

pour enregistrer la requte.

nSaisissez L i s t e d e s c l i e n t s comme nom de requte.


nValidez.
n

Cliquez sur le bouton

pour l'afficher en mode feuille de donnes.


70

Access 2002

Cliclasolution

Anne 2006/2007

Les clients sont affichs en ordre alphabtique.


n

Fermez la requte.

Critres de slection
Les critres de slection permettent de restreindre le champ d'action d'une
requte, par exemple en n'affichant que certains enregistrements. Les critres
s'crivent sur la ligne Critres, sous les noms de champs slectionns. Dans
certains cas, les critres s'crivent sur plusieurs lignes (la ligne Critres et celles audessous).

Dans l'exemple ci-devant, le critre 1 restreint l'affichage aux enregistrements de la


commande numro 1. Si le critre avait t > 1, l'affichage aurait t restreint aux
commandes dont le numro est suprieur 1.

CHERCHER UNE DATE


Quelle commande a t passe le 3 janvier 1993 ?
n

Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.

Ajoutez la table Commandes. Ajoutez les champs Numro de commande et


Date de commande.

Comme critre du champ Date de commande, saisissez 03/01/1993.

Cliquez sur

pour afficher le rsultat de la requte..

71

Access 2002

Cliclasolution

Anne 2006/2007

nFermez la requte sans la sauvegarder.


On peut saisir Date() comme critre dans un champ de type date. C'est une fonction qui
donne la date du jour ; dans l'exemple prcdent, cela slectionnerait les commandes
passes aujourd'hui. Saisir <Date()-90 comme critre slectionnerait les commandes
passes il y a 90 jours ou plus.

CHERCHER UNE VALEUR PARTICULIRE


Dans quelle ville se trouve le client Harnic lore ?
n Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
n Ajoutez la table Clients et les champs Raison sociale et Ville.

n Affichez le rsultat, en cliquant sur


n Fermez la requte sans l'enregistrer.

CARACTRES GNERIQUES
Les caractres gnriques permettent de rpondre des questions comme "quels
sont les articles dont la rfrence commence par Z". Dans ce cas, le critre serait :
comme "Z*".
Dans un critre, le caractre * remplace un groupe de lettres, alors que le caractre
? remplace une lettre une position prcise. Un critre contenant des caractres
gnriques est prcd de l'oprateur comme.
n

Ne gardez que la fentre Base de donnes ouverte et crez une requte


vierge.

Choisissez la table Clients.

Ajoutez, dans cet ordre, les champs : Raison sociale, Rue, Code postal et

Ville.
n

Saisissez Comme " m a m a * " dans la ligne Critres du champ Raison sociale.
72

Access 2002

Cliclasolution

Anne 2006/2007

Access permet d'afficher les zones de saisie dans une fentre. C'est utile quand, par exemple,
l'on saisit un long critre qui ne tient pas dans la largeur de la colonne.
Il faut placer le curseur dans la zone de saisie et appuyer simultanment sur les touches Shift
F2. La fentre Zoom s'affiche. Une fois la saisie termine, fermer la fentre en cliquant sur OK.

n Placez la requte en mode feuille de donnes en appuyant sur


Les deux clients dont le nom commencent par mama sont slectionns.

n Fermez la requte sans la sauvegarder.

CHERCHER LES C H AM P S VIDES


Vous dsirez la liste des articles dont le champ Catgorie est vide. Les expressions
est null ou est pas null peuvent tre utilises comme critres pour chercher des
champs vides ou non vides.
n Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
n Ajoutez la table Catalogue et les champs Rfrence et Catgorie.
n Comme critre du champ Catgorie, saisissez Est Null

n Cliquez sur le bouton


L'article P113 n'a pas de catgorie.

n Fermez la requte sans la sauvegarder.


73

Access 2002

Cliclasolution

Anne 2006/2007

EXCLURE CERT AINS ENREGISTREMENTS


Vous dsirez obtenir la rfrence de tous les produits sauf ceux de la classe tlco.
n

Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.

Ajoutez la table Catalogue et les champs Rfrence et Catgorie.

Comme critre du champ Catgorie, saisissez Pas "tlco".

nCliquez sur
Tous les articles s'affichent, sauf ceux de la catgorie tlco.
nFermez la requte sans la sauvegarder.

SLECTIONNER UNE PLAGE DE VALEURS


Affichons la liste des articles valant moins de 1 000
nCrez une requte vierge.
n

Ajoutez la table Catalogue, puis les champs Dsignation et Prix unitaire.

Comme critre du champ Prix unitaire, saisissez < 1000 .

nCliquez sur
Les articles dont le prix est infrieur 1 000 s'affichent.

74

Access 2002

Cliclasolution

Anne 2006/2007

Dans les critres, les valeurs numriques ou montaires se saisissent sans mise en
forme. Dans notre exemple, nous avons top < 1000, et non < 1 000 .
Les oprateurs de comparaison peuvent tre aussi utiliss avec les dates et mme
avec les champs de type texte. Le critre < P dans le champ Rfrence produirait la
liste des rfrences dont la premire lettre est avant P dans l'ordre alphabtique.
nFermez la requte sans la sauvegarder.

OPRATEUR "ET"
OPRATEUR "ET" DANS DES CHAMPS DIFFRENTS
Dans la liste des articles de la catgorie alarme valant moins de 1 500 F, deux
conditions doivent tre remplies simultanment pour qu'un enregistrement soit
slectionn : le champ Catgorie doit contenir alarme, et le champ Prix unitaire
doit contenir une valeur strictement infrieure 1500.
Pour que plusieurs critres soient satisfaits en mme temps sur des champs diffrents
(Catgorie et Prix unitaire), il suffit de saisir les critres sur la mme ligne de
critres.
nCrez une requte vierge.
nAjoutez la table Catalogue et les champs Dsignation, Catgorie et Prix

unitaire.
nSaisissez les critres comme ci-dessous

nCliquez sur

75

Access 2002

Cliclasolution

Anne 2006/2007

OPRATEUR "OU" DANS LE MME CHAMP


Vous allez crer la liste des produits qui valent entre 1 000 et 2 000 .
nCliquez sur
nSupprimez le champ Catgorie.
nSupprimez le critre du champ Prix unitaire.
nComme critre du champ Prix unitaire, saisissez >= 1000 Et <= 2000.

nCliquez sur

nFermez la requte sans la sauvegarder.

OPRATEUR "OU"
OPRATEUR "OU" DANS DES CHAMPS DIFFRENTS

Vous dsirez la liste des produits qui soit appartiennent la catgorie tlco, soit
valent moins de 1 000 . C'est un OU entre deux champs.
Pour placer un ou dans des champs diffrents, il faut crire ces conditions sur des
lignes diffrentes. Vous pouvez ainsi crire la premire condition, comme d'habitude,
sur la ligne Critres, et la seconde condition, pour l'autre champ, sur la ligne juste en
dessous.
nCrez une requte vierge
n Ajoutez la table Catalogue et les champs Dsignation, Catgorie et Prix
unitaire.
n Comme critre du champ Catgorie, et sur la ligne Critres, saisissez t l c o .
n Comme critre du champ Prix unitaire, et sur la ligne Ou, saisissez <1000 .
76

Access 2002

Cliclasolution

Anne 2006/2007

nCliquez sur
Les articles slectionns sont soit de la catgorie tlco soit valent moins de 1 000 .

OPRATEUR "OU" DANS LE MME CHAMP


Crez la liste des produits de catgorie alarme ou tlco.
n Cliquez sur
nSupprimez les critres du champ Prix unitaire et du champ Catgorie.
nComme critre du champ Catgorie, saisissez tlco O u alarme.

nCliquez sur
Seuls s'affichent les articles appartenant la catgorie alarme ou la catgorie
tlco.

77

Access 2002

Cliclasolution

Anne 2006/2007

nFermez la requte sans la sauvegarder.


RCAPITULATIF DES CRITRES
La table ci-aprs rsume les principales recherches que l'on peut effectuer l'aide de
requtes.
Il ne s'agit pas d'exercices mais d'exemples de critres.
BUT
Chercher une valeur
numrique prcise

ACTION

ILLUSTRATION

Saisir la valeur
numrique,sans saisir de
format (ni symbole
montaire ni espace)
Cherche les articles dont le prix est
de 1350

Chercher une date


prcise

Saisir la date. Access


place le
symbole # autour des
dates
Cherche les commandes du
15/01/1992

Chercher un texte
prcis.

Cherche un texte en ne
spcifiant que certaines
lettres

Saisir le texte,
indiffremment en
minuscules ou
majuscules. Access le
place entre guillemets.
Saisir les lettres sur
laquelle porte la
recherche et remplacer
les autres par un
caractre gnrique :
* remplace un groupe de
lettres.

78

Cherche l'enregistrement du client LE


CHEVALIER D'HARN.
Quand on utilise des caractres
gnriques * et ? , Access place
automatiquement l'oprateur Comme
devant le critre.

Access 2002

Cliclasolution

Anne 2006/2007
Cherche les clients dont le nom contient
harn.

? remplace un seul
caractre une position
prcise.

Cherche les articles dont la rfrence


contient le caractre 1 a la 3 me
position.
Comme "[liste de
Caractres]" cherche
un des caractres de la
liste une position
prcise.
Cherche les articles dont la rfrence
commence par E ou P (trouve E100 et
P110, mais pas Z 100).
Comme "[!liste de
caractres]" exclut les
caractres de la liste
une position prcise.
Cherche les articles dont la rfrence
ne commence pas par E ou P
Chercher les champs
non renseigns.

Saisir Est null comme


critre.

Cherche les articles dont le champ


Catgorie n'est pas renseign.
Chercher les champs qui
ne satisfont pas une
condition.

Saisir l'oprateur Pas


avant
la condition.
Cherche les articles dont le champ
Catgorie est renseign.

Chercher les valeurs


entre telle et telle valeur.

Saisir Entre . . .
et
. . . . Remplacer
les . . . par les valeurs
limites.
Cherche les articles dont le prix
est entre 1 000 et 2 000

Comparer des valeurs

Utilisez les oprateurs


de comparaisons : >
pour suprieur ,
>= pour suprieur ou
gal , < pour infrieur
, <= pour infrieur ou
gal , <> pour diffrent

79

Cherche les articles dont le prix est


suprieur 1 000 .

Access 2002

Cliclasolution

Anne 2006/2007

de.
Placer deux critres
relis par un ET dans
des champs diffrents

Saisir les critres sur la


mme ligne, chacun
sous leur champ.

Cherche les articles de la catgorie


alarme et de moins de 2 000 .
Placer plusieurs
critres relis par un
ET dans le mme
champ.

Saisir les critres sous le


champ en question, en
les sparant par
l'oprateur
Et
Cherche les articles dont le prix est
entre 1 000 et 2 000 non compris.

Placer plusieurs
critres relis par un
OU dans des champs
diffrents

Placer plusieurs
critres relis par un
OU dans le mme
champ

Saisir les critres sur


des lignes diffrentes,
chacun sous leur champ.
Si par exemple il .y a
quatre OU, saisir sur
quatre lignes.

Cherche les articles de la catgorie


Alarme ou dont le prix est infrieur
2 000

Saisir les critres sous le


champ en question, en
les sparant par
l'oprateur Ou.
Cherche les produits de la catgorie
Alarme ou de la catgorie Tlco

Utiliser une expression


comme critre.

Saisir l'expression. Les


noms de champs se
saisissent entre
crochets.
Cherche
les articles dont le prix unitaire est fix
plus du double du prix de revient.

Paramtrer les requtes


Une requte paramtre est une requte qui demande de spcifier un ou plusieurs
critres, au moment de son excution.
n Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
nAjoutez la table Clients .
nAjoutez les champs Code postal, Ville et Raison sociale.
n

Choisissez l'ordre de tri Croissant pour le code postal et la raison sociale.

Comme critre pour le champ Code postal, saisissez c o m m e [ C o d e


postal recherch].

80

Access 2002

Cliclasolution

Anne 2006/2007

Access va chercher un champ nomm comme code postal recherch, pour faire
la comparaison. N'en trouvant pas, il interrompra la requte pour en demander la
valeur.
Cliquez sur
Une bote de dialogue vous demande la valeur du paramtre.

Vous pouvez taper le critre qui vous intresse. 75010 donnerait les clients du
10me arrondissement de Paris.
n

Saisissez 75* et validez.


La liste des clients parisiens s'affiche.

Cration de champs calculs


Vous allez crer une requte affichant, pour chaque article command, le numro de
commande, la rfrence de l'article, la quantit commande pour ce numro de commande, le
prix unitaire et enfin, le prix total par article.
Le prix total par article sera un champ calcul.
n

Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.

Ajoutez la table Dtail des commandes et la table Catalogue. Ajoutez les champs
Numro de commande, Rfrence article, Quantit et Prix unitaire.

Slectionnez l'ordre de tri Croissant pour le champ Numro de commande.

Il s'agit maintenant de crer le champ calcul.

81

Access 2002

Cliclasolution

Anne 2006/2007

Dans une expression de calcul, les noms de champ sont toujours entre crochets,
comme [Prix unitaire] Pour crire l e s e x p r e s s i o n s de cal cul , vou s pouvez
utiliser les oprateurs arithmtiques habituels (+ pour PLUS, - pour MOINS, * pour
MULTIPLIER, / pour DIVISER, ainsi que les parenthses) .
Cliquez sur
Les enregistrements s'affichent avec le champ calcul Prix total

Fermez la requte sans la sauvegarder.


II n'est pas ncessaire de placer dans la requte les champs Quantit et Prix unitaire pour
pouvoir les utiliser dans une expression de calcul

Calculs globaux
CALCULS SUR TOUS LES ENREGISTREMENTS
Vous allez calculer la quantit totale d'articles vendus. Il ne s'agit plus de champ
calcul, mais d'un calcul portant sur tous les enregistrements.
Pour ce type de calcul, il faut faire apparatre une nouvelle ligne, la ligne Opration.
Puis, pour le champ choisi, slectionner l'opration qui vous intresse. L'opration
Somme convient pour notre exemple.
n Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
n Ajoutez la table Dtail des commandes et ajoutez le champ Quantit.
82

Access 2002

Cliclasolution

Anne 2006/2007

Faites apparatre la ligne Opration en cliquant sur le bouton

Cliquez sur la ligne Opration, dans la colonne Quantit, pour faire apparatre le
bouton de liste droulante. Dans la liste droulante, choisissez Somme.

nCliquez sur

Aucun enregistrement n'est slectionn, par contre, la somme du champ Quantit


pour tous les enregistrements de la table Dtail des commandes s'affiche.
Oprations

Rsultats

Somme

Somme des valeurs du champ.

Moyenne

Moyenne des valeurs du champ.


Valeur minimale du champ.
Valeur maximale du champ.
Nombre de valeurs dans le champ (nuls non compris).
Ecart-type des valeurs du champ.

Min
Max
Compte
Ecartype
Var
Premier
Dernier

Variance des valeurs du champ.


Premire valeur du champ qui correspond aux critres de la requte.
Dernire valeur du champ qui correspond aux
critres de la requte.

CALCULS SUR DES GROUPES D'ENREGISTREMENTS


REGROUPER LES DONNES

83

Access 2002

Cliclasolution

Anne 2006/2007

Le calcul prcdent portait sur tous les enregistrements. Cette fois, vous allez
regrouper les enregistrements par catgorie, et demander la quantit vendue pour
chaque catgorie.
Les enregistrements sont regroups grce la fonction Regroupement dans la ligne
Opration. Il est possible de faire plusieurs regroupements, par exemple regrouper
d'abord les clients par pays, puis par ville, en mettant les deux champs la suite.
nCliquez sur
nChoisissez Requte / Afficher la table...
nAjoutez la table Catalogue.
n

Ajoutez le champ Catgorie, en l'insrant devant le champ Quantit (attrapez-le


avec la souris, et, relchez-le sur le nom de champ Quantit).

Sur la ligne Opration, pour le champ Catgorie, il doit y avoir Regroupement

Cliquez sur

Access a calcul la somme des quantits vendues pour chaque catgorie.

nChoisissez Fichier Enregistrer la requte sous...


n Saisissez Quantits vendues par catgorie et validez.
Vous allez calculer le chiffre d'affaires par article vendu.
n Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
n Ajoutez les tables Dtail des commandes et Catalogue.
84

Access 2002

Cliclasolution

Anne 2006/2007

n Ajoutez les champs Rfrence article, Prix unitaire et Quantit.


n Crez un champ calcul en saisissant Prix total : [Quantit] * [Prix unitaire] sur la
ligne Champ, dans la colonne libre aprs le champ Quantit.
n Cliquez sur le bouton

pour faire apparatre la ligne Opration.

n Slectionnez la fonction Regroupement pour les champs Rfrence article et


Prix unitaire.
n Slectionnez l'opration Somme pour les champs Quantit et Prix total.
Les articles vont tre groups par rfrence. Le regroupement, par prix n'a en fait
pas d'importance, puisque aucune rfrence n'est vendue sous plusieurs prix, c'est
simplement la fonction par dfaut lorsque l'on fait apparatre la ligne Opration.
La requte pourrait tre ralise sans les champs Prix unitaire et Quantit.
nChoisissez Fichier Enregistrer sous... .
nSaisissez CA p a r a r t i c l e ve n d u et validez.

Access va calculer la somme des quantits vendues par rfrence, le prix total, et
va faire la somme de ces rsultats pour chaque rfrence.
nCliquez sur

85

Access 2002

Cliclasolution

Anne 2006/2007

nFermez la requte.

APPLIQUER UN CRITRE APRS UN CALCUL GLOBAL


Les requtes avec calculs globaux autorisent l'utilisation de critres. Par exemple, la
requte suivante, construite partir des tables Dtail des commandes et
Catalogue, calcule la somme des quantits vendues pour chaque catgorie, mais
n'affiche que les catgories dont le total dpasse 200
Il y a donc un calcul qui porte sur tous les enregistrements, puis application de
critre sur le rsultat.

APPLIQUER UN CRITRE AVANT UN CALCUL GLOBAL


La requte suivante prsente galement le total des quantits vendues par
catgorie. Mais cette fois-ci, avant de faire les totaux, on slectionne les
86

Access 2002

Cliclasolution

Anne 2006/2007

enregistrements dont le champ Quantit est suprieur 200. Les commandes dont
la quantit est infrieure 201 ne seront pas prises en compte dans le cumul par
catgorie. Il y a donc application de critre, puis calcul sur les enregistrements
slectionns.

Pour appliquer un critre avant un calcul global, il faut ajouter le champ contenant le
critre et choisir O comme opration.

Il ne reste qu'une catgorie, alarme. Cela signifie qu'il n'y a aucune commande avec
une quantit suprieure 200 pour un article d'une autre catgorie.

Modification automatique des tables


REQUTE ACTION
Les requtes permettent de modifier directement le contenu de tables, par exemple,
supprimer les anciennes commandes ou augmenter de 2 % les tarifs d'une catgorie
de produits. Ces requtes sont appeles des requtes action, par opposition aux
requtes slection que nous avons effectues jusqu' prsent.
MODIFICATION D'ENREGISTREMENTS
Vous allez augmenter de 10 % le prix des articles de la catgorie divers.
n

Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.

Ajoutez la table Catalogue, et les champs Catgorie et Prix unitaire.

Comme critre du champ Catgorie, saisissez di vers.

87

Access 2002

Cliclasolution

Anne 2006/2007

Mettez la requte en mode feuille de donnes. Vrifiez que la rponse ne contient


que des produits divers, et revenez en mode cration.

Cliquez sur

ou choisissez Requte Mise jour.

Une nouvelle ligne, Mise jour, apparat.


nSur la ligne Mise jour, dans la colonne Prix unitaire, saisissez
[Prix unitaire]*1,1.

Cliquez sur le bouton excuter


Access affiche un message indiquant le nombre de lignes qui vont tre mises
jour. Il est possible d'abandonner la mise jour avec le bouton Annuler.

n Validez la bote de dialogue.


La table Catalogue est modifie.
n Cliquez sur le bouton
n Saisissez Augmenter de 10% les produits divers et validez.
n Fermez la requte.
88

Access 2002

Cliclasolution

Anne 2006/2007

La requte apparat dans la fentre Base de donnes. Remarquez l'icone juste


devant le nom de la requte. Ce dessin avertit qu'il s'agit d'une requte action :
chaque fois que cette requte sera excute, le prix des produits divers sera
augment de 10%.

CRER UNE NOUVELLE TABLE


Avec une requte action, il est possible de crer une nouvelle table. Cette table sera
indpendante des donnes originales, c'est dire que si on la modifie, les donnes
de la table originale resteront inchanges. Vous allez crer une nouvelle table
contenant tous les articles de la catgorie divers.
n Ne gardez que la fentre Base de donnes ouverte et crez une requte
vierge.
Ajoutez la table Catalogue et ajoutez l'astrisque (toile) qui se trouve en tte des
champs de la table.
L'astrisque slectionne tous les champs de la table. C'est une mthode rapide pour
crer une requte qui reprend la structure d'une table. On ne peut saisir de critre
sous ce champ.

n Ajoutez le champ Catgorie et saisissez di vers comme critre pour ce champ.


n Le champ Catgorie tant dj affich (avec l'astrisque), cliquez dans sa case
cocher, sur la ligne Afficher, pour viter qu'il ne soit affich deux fois.

89

Access 2002

Cliclasolution

Anne 2006/2007

n Vrifiez que la requte ne concerne bien que la catgorie divers, en passant en


mode feuille de donnes, puis revenez en mode cration
n Cliquez sur Requte / Cration de table... Une bote de dialogue apparat.

Notez qu'il est possible, avec l'option Autre base de donnes, et en donnant son nom
dans la zone Nom de fichier, de transfrer des informations de la base en cours vers
une autre base d'Access.
n Saisissez produits divers comme nom de la nouvelle table et validez.
n Excutez la requte en cliquant sur le bouton

dialogue qui apparat.

n Fermez la requte sans la sauvegarder.


n Cliquez sur l'onglet Table de la fentre Base de donnes. La table produits
divers est dans la liste.
n Slectionnez-la et cliquez sur le bouton Ouvrir.

SUPPRESSION D'ENREGISTREMENTS
Vous allez supprimer les produits de la catgorie divers dans la table Catalogue.
n

Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.

Ajoutez la table Catalogue et le champ Catgorie. Comme critre pour ce


champ, saisissez divers .

Cliquez sur

(Requte Suppression).

Une nouvelle ligne, Supprimer, apparat dans la requte

90

Access 2002

Cliclasolution

Anne 2006/2007

Excutez la requte en cliquant sur


apparat

, et validez la bote de dialogue qui

Fermez la requte sans la sauvegarder.

Cliquez sur l'onglet Table de la fentre Base de donnes. Slectionnez-la et


cliquez sur le bouton Ouvrir.
La table Catalogue n'a plus de catgorie divers.

AJOUT D'ENREGISTREMENTS
Vous allez ajouter la table Catalogue les enregistrements de la table produits
divers dont le prix unitaire est suprieur 10 francs.
n Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
n Ajoutez la table produits divers. Ajoutez le champ astrisque (toile) pour que
tous les champs soient slectionns.
n Ajoutez le champ Prix unitaire et saisissez >10 comme critre pour ce champ.

nCliquez sur

(Requte Ajout...).
91

Access 2002

Cliclasolution

Anne 2006/2007

nDans la bote de dialogue qui apparat, droulez la liste de la zone Nom de table.
Choisissez Catalogue.

Comme pour la cration de table, cette requte action permet de transfrer des
donnes vers une autre base de donnes Access. II Faut dans ce cas choisir l'option
Autre base de donnes et saisir le nom de la base dans la zone Nom de fichier.
nValidez la bote de dialogue Proprits de la requte.
Une nouvelle ligne, Ajouter , est apparue. Elle indique quel champ de la table
de destination chaque champ slectionn doit tre ajout. Par dfaut, elle reprend
les mmes noms de champ, mais il est possible d'indiquer d'autres noms, et ainsi
d'ajouter des donnes entre des tables n'ayant pas les mmes noms de champ.
n Effacez Prix unitaire sur la ligne Ajouter , pour le champ Prix unitaire.
En effet, ce champ est dj ajout dans la table de destination grce l'astrisque.
Il n'est reproduit que pour servir de critre.

Excutez la requte en cliquant sur le bouton


qui apparat.

Fermez la requte sans la sauvegarder.

Cliquez sur l'onglet Table de la fentre Base de donnes. Slectionnez la table


Catalogue et cliquez sur le bouton Ouvrir.

92

et validez la bote de dialogue

Access 2002

Cliclasolution

Anne 2006/2007

Requtes slection et modification de donnes


Nous allons tirer parti de la possibilit de modifier ou de saisir des donnes travers les
requtes slection. Le formulaire du bon de commande, prsent au chapitre 4, sera
construit sur deux requtes, qui vont nous permettre d'avoir exactement les champs qui
nous intressent.
Pourquoi deux requtes ? Parce que le bon de commande est compos de deux parties : les
gnralits propos de la commande (client, adresses, etc...) et les dtails (articles
commands).
La requte concernant les gnralits sur la commande permettra de saisir des donnes dans la
table Commandes et d'afficher les donnes de la table Clients. Cette structure est illustre ciaprs.
Cette requte permet, entre autres, d'afficher les coordonnes du client.
La requte concernant le dtail des commandes servira construire la partie dtail des
commandes du formulaire, comme illustre ci-dessous.

L aussi, la requte permet d'avoir accs des informations inaccessibles dans la seule table
Dtail des commandes.

n Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.
n Ajoutez la table Clients et la table Commandes.
n Ajoutez les champs Numro de commande, Numro client (table Commandes),
Raison sociale, Rue,
Transporteur et Urgent.

Code

postal,

Ville,

Date

de

commande,

Notes,

Le champ Numro client doit imprativement tre choisi dans la table Commandes. Lors de
la saisie d'un bon de commande travers la requte, on indique ainsi quel client passe
commande.

Choisissez Croissant comme ordre de tri pour le champ Numro de commande.


Choisissez
et validez.

Fichier

Enregistrer sous... Saisissez

93

Informations

commandes

Access 2002

Cliclasolution

Anne 2006/2007

Ne gardez que la fentre Base de donnes ouverte et crez une requte vierge.

Ajoutez les tables Dtail des commandes et Catalogue.

La commande Affichage Nom des tables (ou le bouton m affiche une ligne supplmentaire, qui
contient les noms des tables auxquelles appartiennent les champs ajouts dans la
requte. Le dessin d'cran de la page suivante reprsente une requte avec la ligne Table
affiche.

Ajoutez les champs Numro de commande, Rfrence article (table Dtail des
commandes), Dsignation, Prix unitaire et Remise.

Aprs le champ Remise (sur la ligne Champ), crez le champ calcul


Prix avec remise, en saisissant Prix avec remise : [Prix unitaire] * (1[Remise]).

nAjoutez le champ Quantit.


n
Aprs
champ

Requte Slection: Inhumations commandes

le

___Commandes
Hum) de r
Numro dent
Date de comm

Noter rteurr
Notes
Urgent_______+

e,u

C A P . Numro de commar
Tri Croissant
Afficher
Cirires:
Ote

Numro

Raison

Code -*-

Rue

, ,~, ,
~~

Quantit (sur la ligne Champ), crez le champ calcul


Prix total, en saisissant

Prix total: [Prix avec remise]* [Quantit].

94

Vous aimerez peut-être aussi