Rechercher : dans
Par :

Requete addition (access)

Dernière réponse le 2 déc 2007 à 16:06:48 méthodiste, le 2 déc 2007 à 02:10:50 
 Signaler ce message aux modérateurs

Bonjour,

je cherche à faire une requête tout simple sous access mais je ne sais pas comment faire.

Dans une table j'ai une durée (table: contrat) que je souhaite multiplier par un prix (table: voiture). J'aimerais que le résultat apparaisse dans la case prix total (table: contrat).

Pouvez vous m'aider svp?

Merci!

Configuration: Windows XP
Internet Explorer 7.0

1

cingaxel, le 2 déc 2007 à 02:22:58

J'espère qu'il y a au moins un champ commun aux 2 tables...

Répondre à cingaxel

2

méthodiste, le 2 déc 2007 à 02:27:06

Oui c'est le champ Cars ID, qui est la clé primaire de la table voitures.

Répondre à méthodiste

3

cingaxel, le 2 déc 2007 à 02:29:34

As-tu déja fait une requête sélection qui calcule ce prix?

Répondre à cingaxel

4

méthodiste, le 2 déc 2007 à 02:34:32

Non justement, c'est ca que je cherche à faire.

Répondre à méthodiste

5

cingaxel, le 2 déc 2007 à 02:43:34

Tout d'abord dans la requête sélection il faut y placer les 2 tables et les lier au niveau du champ [Cars ID] (si cela ne se fait pas automatiquement), et créer le champ [PrixTotal] en le nommant de la façon suivante:
PrixTotal:[TableVoiture]![ChampXXX]*[TableContrat]![ChampYYY­]
Après il faudra transformer cette requête en requête "mise à jour"...

Répondre à cingaxel

6

cingaxel, le 2 déc 2007 à 02:46:44

Plus exactement:
PrixTotal:[Voiture]![Prix]*[Contrat]![Durée]

Répondre à cingaxel

7

cingaxel, le 2 déc 2007 à 02:48:30

La requête doit maintenant retourner tous les prix de tous les contrats

Répondre à cingaxel

8

méthodiste, le 2 déc 2007 à 02:49:51

Et une fois que j'ai fait ca, je fais comment pour que le résultat s'affiche quelquepart ?

Merci de ton aide.

Répondre à méthodiste

9

cingaxel, le 2 déc 2007 à 02:51:45

En fait, il doit y avoir un prix par contrat, ce que tu peux constater en ajoutant dans la requête, à côté du champ [PrixTotal], le champ [Contrat ID].

Répondre à cingaxel

10

cingaxel, le 2 déc 2007 à 02:55:37

Le résultat est pour l'instant calculé par cette requête qui l'affiche quand on fait apparaître cette requête en mode feuille de données. Est-ce le cas?

Répondre à cingaxel

11

méthodiste, le 2 déc 2007 à 03:15:59

Non, le prix ne s'affiche pas.
De plus quand j'exécute la requête, il me demande une valeur pour tous les champs de la requete alors que je voudrais seulement rentrer le numéro du contrat.

Répondre à méthodiste

12

cingaxel, le 2 déc 2007 à 03:24:12

Si tu as tapé lettre pour lettre ce que j'ai écrit: PrixTotal:[Voiture]![Prix]*[Contrat]![Durée], il se peut qu'Access ait mal interprété. Après avoir placé les 2 tables reliées au niveau du champ [Cars ID], tape plutôt: PrixTotal:[Prix]*[Durée], est-ce que les champs "Prix" et "Durée" sont les noms exacts?

Répondre à cingaxel

13

cingaxel, le 2 déc 2007 à 03:29:21

Pour aller plus vite, quels sont les noms exacts de tous les champs des 2 tables?

Répondre à cingaxel

14

méthodiste, le 2 déc 2007 à 03:30:11

Non les champs exacts sont:

booking duration dans la table boooking et daily price dans la table cars.

Comme tu l'as remarqué, c'est un projet en anglais :)

Répondre à méthodiste

15

cingaxel, le 2 déc 2007 à 03:36:05

Alors PrixTotal:[booking]![booking duration]*[cars]![daily price] est le champ que la requête sélection va calculer à raison d'un résultat par contrat. J'imagine que les tables [booking] et (cars) possèdent déjà des enregistrements (des lignes)...

Répondre à cingaxel

16

méthodiste, le 2 déc 2007 à 03:40:03

Alleluiah mes frères, ca marche!

Merci beaucoup!

Répondre à méthodiste

17

cingaxel, le 2 déc 2007 à 03:46:29

Au début tu parlais d'inscrire ce résultat dans la table [booking], c'est possible en transformant maintenant cette requête en requête action de type "mise"à jour". Toutefois cette requête suffit en elle même pour obtenir le résultat souhaité et même y rajouter des contrats (en faisant apparaître dans cette requête les champs à renseigner de la table [booking])

Répondre à cingaxel

18

 méthodiste, le 2 déc 2007 à 16:06:48

Tu peux m'en dire plus sur la requete mise a jour stp?

Répondre à méthodiste