Requête UPDATE avec cumul d'une valeur d'une autre table

Le
Island.ch
Bonjour,

J'ai un problème avec les requêtes UPDATE. J'ai 2 tables : Client et
Commande et je souhaite mettre à jour le champ MontantTotalCommande de
la table Client avec le cumul de tous les montants commandés par
client (cumul de la zone MontantCommande de la table Commande).

J'ai essayé de faire une 1ère requête avec la table Commande pour
sommer le MontantCommande sur NumClient puis une 2ème requête qui lie
la 1ère requête et la table Client afin de mettre à jour le champ
MontantTotalCommande. Cela ne marche pas, il me met le message
suivant : "L'opération doit utiliser une requête qui peut être mise =
à
jour". D'autre part, il a-t-il un moyen d'obtenir le résultat à l'aide
d'une seule requête UPDATE (avec sous-requête) ?.

Merci beaucoup pour votre aide
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Gilbert
Le #6737711
Bonjour,

Je ne peux que te déconseiller de faire ce genre de requête. En effet tu vas
stocker dans ta base une information en double, ce qui est contraire à tout
principe d'une base de données.
Rien ne t'empêche de retrouver le total des commandes en exécutant ta
requête (cumul de la zone MontantCommande de la table Commande) au moment où
tu en as besoin alors que ton champ MontantTotalCommande n'aura peut-être
pas été mis à jour pour une raison quelconque et contiendra donc une valeur
erronée.

--
Cordialement,

Gilbert



Bonjour,

J'ai un problème avec les requêtes UPDATE. J'ai 2 tables : Client et
Commande et je souhaite mettre à jour le champ MontantTotalCommande de
la table Client avec le cumul de tous les montants commandés par
client (cumul de la zone MontantCommande de la table Commande).

J'ai essayé de faire une 1ère requête avec la table Commande pour
sommer le MontantCommande sur NumClient puis une 2ème requête qui lie
la 1ère requête et la table Client afin de mettre à jour le champ
MontantTotalCommande. Cela ne marche pas, il me met le message
suivant : "L'opération doit utiliser une requête qui peut être mise à
jour". D'autre part, il a-t-il un moyen d'obtenir le résultat à l'aide
d'une seule requête UPDATE (avec sous-requête) ?.

Merci beaucoup pour votre aide
Publicité
Poster une réponse
Anonyme