Re: ERROR: se ha detectado un deadlock

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Ever Daniel Barreto Rojas <ebarreto(at)nexusit(dot)com(dot)py>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: ERROR: se ha detectado un deadlock
Date: 2008-01-13 03:48:41
Message-ID: 20080113034841.GA8304@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Ever Daniel Barreto Rojas escribió:

> FOR holder
> IN SELECT idpersona, per_fnac, temp_fnac
> FROM persona
> LOOP
> RAISE NOTICE 'Actualizando persona % con fecha % a %', holder.idpersona, holder.per_fnac, holder.temp_fnac;
> IF isdate(holder.temp_fnac) THEN
> EXECUTE 'UPDATE persona SET per_fnac = ' || quote_literal(holder.temp_fnac::date) || ' WHERE idpersona = ' || holder.idpersona;
> END IF;
> END LOOP;
> RETURN 1;
> END;

No le veo el proposito a esta funcion. ¿Por que no mejor hacer de una
sola vez el update?

update persona set per_fnac = quote_literal(...)
where isdate(persona.temp_fnac)

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2008-01-13 03:49:20 Re: ERROR: se ha detectado un deadlock
Previous Message Gabriel Hermes Colina Zambra 2008-01-13 02:47:39 Re: Ejecutar DLL desde postgresql