Re: changing column datatype from char(20) to timestamp - Mailing list pgsql-novice

From Stephan Szabo
Subject Re: changing column datatype from char(20) to timestamp
Date
Msg-id 20080429104232.H54920@megazone.bigpanda.com
Whole thread Raw
In response to changing column datatype from char(20) to timestamp  ("Lonni J Friedman" <netllama@gmail.com>)
List pgsql-novice
On Tue, 29 Apr 2008, Lonni J Friedman wrote:

> Back then, I was effectively mangling timestamps in a table, by
> casting to char(20) to work around problem with a webapp.  The app
> finally got fixed, and I'm looking into how to try to get all this
> ugly data from char(20) into a sane 'timestamp without time zone'
> format.  Right now, its all:
>
> date_created   | character(20) | not null
>
> I want to change it to:
> date_created   | timestamp without time zone | not null
>
> Unfortunately, I can't just do:
> ALTER TABLE data ALTER COLUMN date_created TYPE timestamp ;

In recent versions I think something like
 ALTER TABLE data ALTER COLUMN date_created TYPE timestamp USING
 CAST(date_created as timestamp);
should work. If you have data for which the cast will fail, you can use
some other expression after the USING.

pgsql-novice by date:

Previous
From: Tom Lane
Date:
Subject: Re: changing column datatype from char(20) to timestamp
Next
From: Bruce Hyatt
Date:
Subject: Re: Configuration on CentOS 4.6