Re: recasting to timestamp from varchar - Mailing list pgsql-general

From Pavel Stehule
Subject Re: recasting to timestamp from varchar
Date
Msg-id CAFj8pRAk7NZYHF5o9w70nVKLOyXiXdOMaLsZo2XR4kE6vSxapw@mail.gmail.com
Whole thread Raw
In response to recasting to timestamp from varchar  (Kirk Wythers <kirk.wythers@gmail.com>)
List pgsql-general
Hello

2013/1/4 Kirk Wythers <kirk.wythers@gmail.com>
I am trying to re-cast a column as a timestamp>

ALTER TABLE sixty_min ALTER COLUMN time2 TYPE timestamp;
ERROR:  column "time2" cannot be cast to type timestamp without time zone

The column time2 is currently a varchar. I actually do not want to mess with time zones, but it seems that postgres will not let me do this. The actual values in the column time2 look like this:

7/15/08 12:00

Is this possible? 

yes. it is possible
postgres=# create table foo(a timestamp);
CREATE TABLE

postgres=# insert into foo values(now());
INSERT 0 1
postgres=#

postgres=# alter table foo alter column a type varchar;
ALTER TABLE
postgres=# alter table foo alter column a type timestamp;
ERROR:  column "a" cannot be cast automatically to type timestamp without time zone
HINT:  Specify a USING expression to perform the conversion.
postgres=# alter table foo alter column a type timestamp using a::timestamp;
ALTER TABLE
postgres=#

Regards

Pavel Stehule

pgsql-general by date:

Previous
From: Kirk Wythers
Date:
Subject: recasting to timestamp from varchar
Next
From: Pavel Stehule
Date:
Subject: Re: Curious unnest behavior