Bonjour ; Le 14/10/2012 16:41, Pierre Graber a écrit : > Le 14. 10. 12 06:42, pierre-yves samyn a écrit : >> Bonjour >> >> >> Merci Pierre-Yves et Yves, >> >> J'ai créé une nouvelle table (Ajout) avec une clé primaire commune à ma >> table Membres. >> >> Dans une fenêtre SQL, quand je veux faire l'update : >> «update Membres where IdMembre=Ajout.IdMembre set IdFiche=Ajout.IdFiche, >> MdpFiche=Ajout.MdpFiche» >> j'obtiens le message «Table not found in statement [update Membres]». >> >> J'en conclus que j'ai dû louper quelque chose... >> Pouvez-vous encore m'aider? >> >> Je vous en remercie d'avance! >> >> Pierre >>
Il me semble que la syntaxe exacte devrait être : UPDATE Membres, Ajout SET Membres.IdFiche = Ajout.IdFiche, Membres.MdpFiche = Ajout.MdpFiche WHERE Membres.IdMembre = Ajout.IdMembre En cas de noms de champ identiques entre deux tables, l'utilisation du nom canonique est obligatoire pour lever toute ambiguïté. D'autre part, lorsqu'on utilise UPDATE dans un contexte multi-tables, on doit déclarer les tables utilisées après UPDATE, qu'elles soient cibles ou sources de mise à jour. Ici, l'erreur "table not found" concerne à mon avis la table Ajout, pas la table Membres. Sous une base MySQL, la syntaxe que j'indique fonctionne. Je ne sais pas ce qu'il en est sous HSQL, mais je ne vois pas de raison que ça ne marche pas. Cordialement ; Marc Romano -- Envoyez un mail à users+h...@fr.libreoffice.org pour savoir comment vous désinscrire Les archives de la liste sont disponibles à http://listarchives.libreoffice.org/fr/users/ Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être supprimés