Thread: Server timestamp

Server timestamp

From
Chris Bartlett
Date:
Date and time functions like current_time return the client machine's
time. Is there a way of getting the database server's time? I have a
situation that requires comparison of a date stamp on records with
"today", but I need to avoid the possibility of a user changing their
computer's clock time.

Re: Server timestamp

From
Scott Marlowe
Date:
On Sun, May 3, 2009 at 7:04 AM, Chris Bartlett
<c.bartlett@paradise.net.nz> wrote:
> Date and time functions like current_time return the client machine's time.
> Is there a way of getting the database server's time? I have a situation
> that requires comparison of a date stamp on records with "today", but I need
> to avoid the possibility of a user changing their computer's clock time.

I think you're confused.  According to the docs:

CURRENT_TIME and CURRENT_TIMESTAMP deliver values with time zone;
LOCALTIME and LOCALTIMESTAMP deliver values without time zone.

The time delivered is the server's time, adjusted to client's
timezone.  If you want the server time without timezone then use
localtime / localtimestamp.

It's never the client's time.

Re: Server timestamp

From
Craig Ringer
Date:
Chris Bartlett wrote:
> Date and time functions like current_time return the client machine's
> time.

Er, no they don't. They return the server's time, adjusted to the
client's time zone if the client specified its time zone using SET TIMEZONE.

At least, that's how they behave here, and I can't imagine any sane
client interface attempting to change it.

--
Craig Ringer