cs_lath
Messages postés4Date d'inscriptionvendredi 20 février 2004StatutMembreDernière intervention22 décembre 2008
-
21 déc. 2008 à 21:35
cs_lath
Messages postés4Date d'inscriptionvendredi 20 février 2004StatutMembreDernière intervention22 décembre 2008
-
22 déc. 2008 à 01:09
DoCmd.RunSQL "UPDATE Table1 SET Champ1 = (Select Champ1 From Table2 WHERE Table2.N° = " & Variable & " and Table2.Champ2 = Table1.Champ1);"
Table1.Champ1 = une valeur temporaire qui correspond a Table2.Champ2
Je voudrais donc remplacer la valeur Table1.Champ1 par Table2.Champ1 quand Table1.Champ1=Table2.Champ2
Effectivement avec un simple inner join, cela fonctionne.
UPDATE Table1 INNER JOIN Table2 ON Table1.Champ1 Table2.Champ2 SET Table1.Champ1 Table2.Champ1 WHERE Table2.N°= Variable;
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention15 juillet 201137 21 déc. 2008 à 22:33
Salut
Il te manque la clause where sur l'update
car la il fait un update sur toute la table car tu ne lui indique pas les enregistrement a modifier donc il le fait sur toute la table
cs_lath
Messages postés4Date d'inscriptionvendredi 20 février 2004StatutMembreDernière intervention22 décembre 2008 21 déc. 2008 à 22:46
Merci, et oui effectivement je souhaite update toute la table, mais il ne fait rien, erreur 3073...
Donc
DoCmd.RunSQL "UPDATE Table1 SET Champ1 (Select Champ1 From Table2 WHERE Table2.N° " & Variable & " and Table2.Champ2 = Table1.Champ1) WHERE Champ1 like ""*"" ;"
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention15 juillet 201137 21 déc. 2008 à 22:57
tu refais la meme erreur
sauf que tu te trompes sur la syntaxe de la requete en meme temps
like '*' --> toute la table
DoCmd.RunSQL "UPDATE Table1 SET Champ1 (Select Champ1 From Table2 WHERE Table2.N° " & Variable & " and Table2.Champ2 = Table1.Champ1) WHERE Champ1 IN (Select Champ1 From Table2 WHERE Table2.N° = " & Variable & " and Table2.Champ2 = Table1.Champ1)
devrait mieux fonctionner
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_lath
Messages postés4Date d'inscriptionvendredi 20 février 2004StatutMembreDernière intervention22 décembre 2008 21 déc. 2008 à 23:18
Ne fonctionne pas non plus, toujours la même erreur.
Remplacer le contenu de Table1.Champ1 par Table2.Champ1 quand Table1.Champ1=Table2.Champ2 et ce sur toute la Table1 ... cela parait si simple, et c'est si frustrant de ne pas trouver ;(