Annonce
Suite à un problème technique intervenu entre le 22 et le 23 mars, nous avons du procéder dans la soirée du 25 mars, à la restauration de la base de données du 24 mars (matinée).
En clair, nous avons perdu vos contributions et inscriptions du dimanche 24 et du lundi 25 mars.
Nous vous prions de nous excuser.
#1 Thu 12 May 2022 16:43
- bcxav631
- Juste Inscrit !
- Date d'inscription: 25 Mar 2022
- Messages: 6
Mis à jour de données avec Update
Bonjour à tous,
Je voudrais mettre à jour une table dans une base de données postgreSQL.
J'ai donc une table A avec la géométrie correcte et une table B avec la géométrie incorrect.
J'ai un ID commun entre ces deux tables pour la même géométrie.
Je cherche à mettre à jour la table B avec la géométrie de la table A ?
Je vous montre mon exemple de requête mais cela ne fonctionne pas.
UPDATE Table_B
SET Table_B."geom" = Table_A"geom"
FROM Table_A
where Table_B."id" = Table_A.""id"
and Table_B."id" = 'xxxxxxxxxxx'
Merci de votre aide,
Hors ligne
#2 Fri 13 May 2022 12:04
- ppluvinet
- Participant assidu
- Lieu: LYON
- Date d'inscription: 6 Aug 2007
- Messages: 606
Re: Mis à jour de données avec Update
Bonjour,
A part les quelques soucis de syntaxe (cf les guillemets et les points), cela devrait fonctionner.
Peut-être y a t il une contrainte sur la TableB qui bloque ?
Quel est le message d'erreur ?
Pascal PLUVINET
Hors ligne
#3 Fri 13 May 2022 12:10
- JP LLORENS
- Participant assidu
- Date d'inscription: 12 Nov 2008
- Messages: 231
Re: Mis à jour de données avec Update
Bonjour.
Quel est le message d'erreur ?
Sous réserve que votre requête ait été écrite telle que celle que l'on peut voir dans votre message :
- je supprimerai toutes les doubles quotes '' pour éviter les doublons ou les oublis : ex
Code:
where Table_B."id" = Table_A.""id"
- il manque un point (.) avant geom dans une ligne
Code:
SET Table_B."geom" = Table_A"geom"
- vous ajoutez un critère Table_B."id" = 'xxxxxxxxxxx' => seule la ligne avec l'id 'xxxxxxx' sera mise à jour
Bon ppluvinet a été plus rapide que moi !
JP
Hors ligne
#4 Fri 13 May 2022 16:10
- bcxav631
- Juste Inscrit !
- Date d'inscription: 25 Mar 2022
- Messages: 6
Re: Mis à jour de données avec Update
Merci beaucoup pour votre aide à tous les deux !!
Finalement j'ai utilisé une sous requête :
UPDATE table_A
SET "geom" = ( select "geom" FROM table_A WHERE id = 'xxxxx')
WHERE id = 'xxxxxx' ;
Merci en tout cas de m'avoir répondu et d'avoir pris du temps !
Bon week-end à vous
Hors ligne