Thread: CURRENT_TIMESTAMP wierd behaviour

CURRENT_TIMESTAMP wierd behaviour

From
"Andy Foster"
Date:
Hi all

I have created the following simple table

create table NTE_NOTES (
    nte_id int unique not null,
    nte_text text not null,
    nte_last_updated timestamp not null,
    constraint nte_pk primary key (nte_id));

If I execute the following sql as a single transaction in the admin
interface or using JDBC it appears that the CURRENT_TIMESTAMP has the same
value for all records including the updated one. Why?

insert into NTE_NOTES (nte_id, nte_text, nte_last_updated)
values(99999,'demo study note text',CURRENT_TIMESTAMP);
insert into NTE_NOTES (nte_id, nte_text, nte_last_updated)
values(29999,'demo study note text',CURRENT_TIMESTAMP);
insert into NTE_NOTES (nte_id, nte_text, nte_last_updated)
values(39999,'demo study note text',CURRENT_TIMESTAMP);
update NTE_NOTES set nte_last_updated = CURRENT_TIMESTAMP where nte_id =
99999;
select * from NTE_NOTES;

Results from call:

29999;"demo study note text";"2006-08-10 15:34:51.593"
39999;"demo study note text";"2006-08-10 15:34:51.593"
99999;"demo study note text";"2006-08-10 15:34:51.593"

Now I am not a db expert so unless this is something to do with the
transaction I would have expected different date values.

Can anyone give me an insight?

Regards

Andy Foster


Re: CURRENT_TIMESTAMP wierd behaviour

From
Scott Marlowe
Date:
On Thu, 2006-08-10 at 09:37, Andy Foster wrote:
> Hi all
>
> I have created the following simple table
>
> create table NTE_NOTES (
>     nte_id int unique not null,
>     nte_text text not null,
>     nte_last_updated timestamp not null,
>     constraint nte_pk primary key (nte_id));
>
> If I execute the following sql as a single transaction in the admin
> interface or using JDBC it appears that the CURRENT_TIMESTAMP has the same
> value for all records including the updated one. Why?

Read here:

http://www.postgresql.org/docs/8.1/interactive/functions-datetime.html#FUNCTIONS-DATETIME-CURRENT