Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pb de requête mise à jour

1 réponse
Avatar
Fab
Bonjour,

Je voudrais mettre =E0 jour la valeur d'un champ num=E9rique=20
avec la somme de ce m=EAme champ dans la m=EAme table.

Par exemple, ma table PRODUIT contient 3 enregistrements=20
avec le m=EAme produit P1 et des quantit=E9s diff=E9rentes pour=20
les 3 (champ QTE).
Je voudrais mettre =E0 jour le premier enregistrement=20
(num=E9rot=E9 avec champ NUM_LIG) pour qu'il contienne la=20
somme des 3 quantit=E9s. J'ai =E9crit la requ=EAte suivante mais=20
Access me retourne le message "L'Op=E9ration doit utiliser=20
un requ=EAte qui peut =EAtre mise =E0 jour"...

UPDATE PRODUIT P SET P.QTE =3D (SELECT SUM(QTE) FROM PRODUIT=20
WHERE PRODUIT.COD_PDT=3DP.COD_PDT)
WHERE P.PDT_COD =3D '12345'
AND P.NUM_LIG =3D 1

Merci pour votre aide.

1 réponse

Avatar
3stone
Salut,

"Fab"
Je voudrais mettre à jour la valeur d'un champ numérique
avec la somme de ce même champ dans la même table.

Bizarre, bizarre, vous avez dit bizarre ?


Par exemple, ma table PRODUIT contient 3 enregistrements
avec le même produit P1 et des quantités différentes pour
les 3 (champ QTE).
Je voudrais mettre à jour le premier enregistrement
(numéroté avec champ NUM_LIG) pour qu'il contienne la
somme des 3 quantités. J'ai écrit la requête suivante mais
Access me retourne le message "L'Opération doit utiliser
un requête qui peut être mise à jour"...

UPDATE PRODUIT P SET P.QTE = (SELECT SUM(QTE) FROM PRODUIT
WHERE PRODUIT.COD_PDT=P.COD_PDT)
WHERE P.PDT_COD = '12345'
AND P.NUM_LIG = 1


Essaies ainsi:

UPDATE PRODUIT P SET P.QTE = (DSUM("QTE";"PRODUIT";"COD_PDT='" & P.COD_PDT & "'")
WHERE P.PDT_COD = '12345' AND P.NUM_LIG = 1;


--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------