requete update et sous-requete

Le
Thierryx
Bonjour,

Jai un probleme lorsque j'essaie d'executer une requete
update, access me met le message d'erreur suivant :

"L'operation doit utiliser une requte qui peut etre mise
a jour."

Le problme, amon avis, doit venier du fait qu'il y a une
sous requete dans ma requete update, car si je l'enleve
cela fonctionne :

UPDATE R_facture INNER JOIN (T_fourniture INNER JOIN
(T_commande INNER JOIN TA_fouCom ON T_commande.PK_com =
TA_fouCom.FK_PK_com_fc) ON T_fourniture.Pk_fou =
TA_fouCom.FK_PK_fou_fc) ON (R_facture.objet =
T_fourniture.num_fou) AND (R_facture.ID_com =
T_commande.ID_com) SET TA_fouCom.TauxFG_fc = defFG_fou;

Alors ma question est : est ce que s'est totalement
impossible d'utiliser des sous-requetes dans une requete
UPDATE, et si c'est quand meme possible, comment les
utiliser? Ou si il existe une magouille ? (Tres frequent
dans access)

@ + et merci d'avance
  • Partager ce contenu :
Vos réponses
Trier par : date / pertinence
Michel B.
Le #5214271
Bonjour,

Personnellement, j'ai créé une BD sous access qui
représente ma vidéothèque. Étant confronté au même
problème que vous, je me suis procurer un bouquin sur
le VBA (Access) et je travaille maintenant mes requêtes
par programmation.

Bien sur, ne connaissant pas vos connaissances sur le
sujet, même si je tentais de vous expliquer, ce serait
peut-être trop ardu, si le "défi" vous intéresse, voilà
un début de code :

Public Function ChangeRequeteDef(ChaineRequete As String,
ChaineSQL As String) As Boolean

Dim Definition As Variant

If ((ChaineRequete = "") Or (ChaineSQL = "")) Then
ChangeRequeteDef = False
Else
Set Definition = CurrentDb.QueryDefs(ChaineRequete)
Definition.SQL = ChaineSQL
Definition.Close
RefreshDatabaseWindow
ChangeRequeteDef = True
End If

End Function

Une fois cette fonction utilisé, un simple Me.Refresh dans
le formulaire visé, et voilà, le tour est joué.

Michel B.

-----Message d'origine-----
Bonjour,

Jai un probleme lorsque j'essaie d'executer une requete
update, access me met le message d'erreur suivant :

"L'operation doit utiliser une requête qui peut etre mise
a jour."

Le problème, amon avis, doit venier du fait qu'il y a une
sous requete dans ma requete update, car si je l'enleve
cela fonctionne :

UPDATE R_facture INNER JOIN (T_fourniture INNER JOIN
(T_commande INNER JOIN TA_fouCom ON T_commande.PK_com =
TA_fouCom.FK_PK_com_fc) ON T_fourniture.Pk_fou =
TA_fouCom.FK_PK_fou_fc) ON (R_facture.objet =
T_fourniture.num_fou) AND (R_facture.ID_com =
T_commande.ID_com) SET TA_fouCom.TauxFG_fc = defFG_fou;

Alors ma question est : est ce que s'est totalement
impossible d'utiliser des sous-requetes dans une requete
UPDATE, et si c'est quand meme possible, comment les
utiliser? Ou si il existe une magouille ? (Tres frequent
dans access) ...

@ + et merci d'avance



.



Poster une réponse
Anonyme