Re: When it is better to use "timestamp without time zone"?
От | Emi Lu |
---|---|
Тема | Re: When it is better to use "timestamp without time zone"? |
Дата | |
Msg-id | 43BBE4CA.6090804@cs.concordia.ca обсуждение исходный текст |
Ответ на | Re: When it is better to use "timestamp without time zone"? (Andrew - Supernews <andrew+nonews@supernews.com>) |
Список | pgsql-general |
>>In postgreSQL, the default value for timestamp is "without time zone". >> >> > >That's true only because the SQL standard says so, not because it's actually >a good idea to use timestamps without time zone. > > >>Can I say when data is used among diff time zones, timestamp with time >>zone is a MUST; otherwise, timestamp without time zone is used? >> >> > >No. You should, IMO, use timestamp with time zone in essentially all cases. >(In particular, you should _always_ use it for recording the time at which >an event happened, which covers most uses of timestamps.) Only use timestamp >without time zone for data storage if you have a specific reason to do so. > > OK. When the column is setup as "timestamp with time zone default now()", the default values will be set based on the Operating System, right? An example case: PostgreSQL server is on machine1, with timezone setup as "-5". A table named test1(col timestamp with time zone default now() ); . insert into test1 from client machine2 with timezone "+2"; the value inserted into machine1 should be "2006-01-04 10:01:01-05" but not "2006-01-04 10:01:01+02" ? . select * from test1 from client machine2, we will get "2006-01-04 10:01:01-05" since the absolute value is saved, which is never caculated again? . What is the problem here when the column type is setup as "timestamp without time zone"? The value "2006-01-04 10:01:01" is saved and read from both machine1 and machine2. Emi
В списке pgsql-general по дате отправления: