Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 06/03/2019 11:19:03
- duple
- Membre
upsert postgres insert on conflict
Bonjour,
j'ai une requête du genre :
Si machin1 n'existe pas
INSERT INTO machin1
INSERT INTO machin 2 VALUES (curval_sequence_de_machin1)
sinon (machin1 existe)
UPDATE machin1
INSERT INTO macin2 VALUES (id_machin1,...)
Fin Si
Maintenant j'aimerai remplacer ces instructions par un simple UPSERT
Genre:
INSERT INTO machin1
ON CONFLICT ON CONSTRAINT la_contrainte_unicite DO
UPDATE machin1
Mais du coup comment faire là pour intégrer également INSERT INTO machin2 ?
Hors ligne
#2 06/03/2019 11:29:08
- gleu
- Administrateur
Re : upsert postgres insert on conflict
Il vous faudra deux requêtes, une pour insérer dans machin1 et une pour insérer dans machin2. A priori, si je lis bien la doc, vous devriez pouvoir utiliser la clause RETURNING pour récupérer la valeur de la colonne id_machin1.
Guillaume.
Hors ligne
#3 07/03/2019 15:13:32
- duple
- Membre
Re : upsert postgres insert on conflict
Merci pour la reponse , ah oui on peut faire un returning sur l'update !!
Merci
Hors ligne
Pages : 1