Re: [Pgsql-ayuda] Funcion now()

From: Manuel Sugawara <masm(at)fciencias(dot)unam(dot)mx>
To: Carmen Gloria Sepulveda Dedes <csepulveda(at)atichile(dot)com>
Cc: Pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx
Subject: Re: [Pgsql-ayuda] Funcion now()
Date: 2003-09-24 17:21:39
Message-ID: m33cemt84c.fsf@conexa.fciencias.unam.mx
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Carmen Gloria Sepulveda Dedes <csepulveda(at)atichile(dot)com> writes:

> Hola.
>
> El uso de now() es para cuantificar el tiempo que
> toman las sentencias sql dentro de la funcion.
>
> Sin embargo, parece ser que el valor de now()
> se "congela" cuando aparece en un bloque begin-end.
>
> Como puedo hacer que esto no sea asi?

No puedes :-(, por definición la función now() o CURRENT_TIMESTAMP
regresan el valor del momento en que inicio la transacción. Podrías
hacer algo como

select now();
begin;
...
end;
select now();

También podrías usar timeofday que si avanza durante el transcurso de
las transacciones. Toma en cuenta que, por razones históricas
desconocidas por mi, regresa texto en vez de un timestamp, lo cual no
es tan grave ya que puedes hacer el cast:

select timeofday()::timestamp;

Para más detalles la documentación en línea de PostgreSQL en:

http://www.postgresql.org/docs/7.3/static/functions-datetime.html#FUNCTIONS-DATETIME-CURRENT

Saludos,
Manuel.

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Manuel Sugawara 2003-09-24 17:22:21 Re: [Pgsql-ayuda] ORM
Previous Message Emilio Capolupo 2003-09-24 17:19:37 Re: [Pgsql-ayuda] ORM