Re: Support for DATETIMEOFFSET - Mailing list pgsql-hackers

From Neil
Subject Re: Support for DATETIMEOFFSET
Date
Msg-id D6F351AB-F0EC-4992-B082-03A3ACB44DD7@fairwindsoft.com
Whole thread Raw
In response to Support for DATETIMEOFFSET  (Jeremy Morton <postgres@game-point.net>)
List pgsql-hackers
> On Apr 10, 2020, at 6:10 PM, Jeremy Morton <admin@game-point.net> wrote:
>
> Neil wrote:
>>> On Apr 10, 2020, at 8:19 AM, Jeremy Morton <admin@game-point.net> wrote:
>>>
>>> Oh well.  Guess I keep using SQL Server then.  datetimeoffset makes it impossible for developers to make the
mistakeof forgetting to use UTC instead of local datetime, and for that reason alone it makes it invaluable in my
opinion. It should be used universally instead of datetime. 
>> 1. Not sure I understand. I’ve never used datetimeoffset so please bear with me. How does storing a time zone with
thedate time “make it impossible for developers to make the mistake….” 
>
> At just about every development shop I've worked for, I've seen developers use methods to get a local DateTime - both
inthe DB and in the code - such as DateTime.Now, and throw it at a DateTime field. Heck, even I've occasionally
forgottento use .UtcNow.  With DateTimeOffset.Now, you can't go wrong.  You get the UTC time, and the offset.  I've
takento using it 100% of the time.  It’s just really handy. 
>

In PostgreSQL there are two types; timestamp and timestamptz.  If you use timestamptz then all time stamps coming into
thedatabase with time zones will be converted to and stored in UTC in the database and all times coming out of the
databasewill have the local time zone of the server unless otherwise requested. 

Not sure how that is error prone.  Maybe you are working around a problem that does not exist in PostgreSQL.

If you use timestamp type (not timestamptz) then all input output time zone conversions are ignored (time zone is
truncated)and sure problems can occur.  That is why there is very little use of the timestamp type. 

Neil
https:://www.fairwindsoft.com


pgsql-hackers by date:

Previous
From: Tomas Vondra
Date:
Subject: Re: Complete data erasure
Next
From: Tom Lane
Date:
Subject: Re: execExprInterp() questions / How to improve scalar array op expr eval?