Subject: Default Values Section

From: "Lourival Oliveira" <[email-masked]>
Date: Tue, 4 Jan 2005 14:51:19 -0300

I have a problem reading the "5.3 Default Values" Section of 
Postgresql8.0.0-rc1 documentation. In this section there are nothing about 
using 'now' constant. I think which there are a conflict with a note about 
'now' in section "9.9. Date/Time Functions and Operators" which show the way 
to achieve the desired behavior. See:

5.3. Default Values

...

The default value may be a scalar expression, which will be evaluated 
whenever the default value is inserted (not when the table is created).

9.9. Date/Time Functions and Operators

...

SELECT CURRENT_TIMESTAMP;
SELECT now();
SELECT TIMESTAMP 'now';
Note: You do not want to use the third form when specifying a DEFAULT clause 
while creating a table. The system will convert now to a timestamp as soon 
as the constant is parsed, so that when the default value is needed, the 
time of the table creation would be used! The first two forms will not be 
evaluated until the default value is used, because they are function calls. 
Thus they will give the desired behavior of defaulting to the time of row 
insertion.

I think which a simple reference to any unpredictable behavior must be 
placed here to avoid confusion when anybody don't reach the desired behavior 
when use default values.

What think you about my suggestion?

Wait replies, Tanks.

Lourival Oliveira da Silva

PS: Sorry by my poor English.

---

From: Bruce Momjian <[email-masked]>
Date: Thu, 10 Feb 2005 23:32:05 -0500 (EST)

OK, I updated the documentation to add a comment on that line:
	
	SELECT CURRENT_TIMESTAMP;
	SELECT now();
	SELECT TIMESTAMP 'now';  -- incorrect for use with DEFAULT

---------------------------------------------------------------------------

Lourival Oliveira wrote:
> ---------------------------(end of broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
>       subscribe-nomail command to [email-masked] so that your
>       message can get through to the mailing list cleanly
> 

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  [email-masked]               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073