Ferran Fontcuberta escribió: > Buenos días; listeros, > > Hay algún comando para hacer un "upsert"? podría hacerlo en código, pero > molaría que fuese atómico; quizá en plsql :??
Hay un ejemplo en el manual de plpgsql: http://www.postgresql.org/docs/current/static/plpgsql-control-structures.html#PLPGSQL-ERROR-TRAPPING La función se llama "merge_db". Nota que la orden MERGE según la define el estándar SQL no es lo mismo que lo que normalmente se entiende por UPSERT. La principal diferencia es cómo se comportan en escenarios concurrentes. -- Alvaro Herrera http://www.amazon.com/gp/registry/5ZYLFMCVHXC "Lo esencial es invisible para los ojos" (A. de Saint Exúpery) -- TIP 9: visita nuestro canal de IRC #postgresql-es en irc.freenode.net
