From: Bruce Momjian <pgman@candle.pha.pa.us>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Thomas Lockhart <lockhart@fourpalms.org>
Cc: PostgreSQL-documentation <pgsql-docs@postgresql.org>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Subject: Re: Use of 'now'
Date: Tue, 13 Nov 2001 22:58:48 -0500 (EST)
Message-ID: <200111140358.fAE3wmY23341@candle.pha.pa.us> (raw)
In-Reply-To: <4638.1005706352@sss.pgh.pa.us>
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> >> Nothing of interest anymore, since 'current' has been removed as of 7.2.
> >> However, Thomas has yet to commit any docs updates for his recent
> >> datetime-related changes ... including that one ...
>
> > Seems it is still in there somewhere:
>
> > test=> create table bb (x timestamp default 'current', y int);
>
> Hmm. It was *supposed* to be removed entirely, but possibly what
> Thomas actually did was to continue to accept the keyword as equivalent
> to 'now'. Thomas?
[ CC'ing to hackers because this is getting into code problems. ]
Here's another inconsistency that Tatsuo found:
test=> create table ff (x time default 'current_timestamp');
ERROR: Bad time external representation 'current_timestamp'
test=> create table ff (x time default 'current');
ERROR: Bad time external representation 'current'
test=> create table ff (x time default 'now');
CREATE
test=> select current_timestamp;
timestamptz
-------------------------------
2001-11-13 22:49:50.607401-05
(1 row)
You can default a time to now, but not to current or current_timestamp.
I believe this is happening because current is implemented as special
timezones in datetime.c and timestamp.c, and current_timestamp is
implemented in gram.y, while 'now' is a function.
Anyway, looks like confusion that should be fixed.
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-docs@postgresql.org
Cc: pgman@candle.pha.pa.us, tgl@sss.pgh.pa.us, lockhart@fourpalms.org, pgsql-hackers@postgresql.org
Subject: Re: Use of 'now'
In-Reply-To: <200111140358.fAE3wmY23341@candle.pha.pa.us>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox