Re: datatype conversion on postgresql 7.4.1 - Mailing list pgsql-sql

From Richard Huxton
Subject Re: datatype conversion on postgresql 7.4.1
Date
Msg-id 4292DBAA.7030408@archonet.com
Whole thread Raw
In response to datatype conversion on postgresql 7.4.1  (Timo Roessner <timo.roessner@gmx.net>)
List pgsql-sql
Timo Roessner wrote:
> and if i try something like:
> 
> alter table fragment alter column  x type numeric(15,2)
> 
> i get an syntax error, so this seems to be no feature in 7.4.1 (didnt 
> find anything like that in the docs too....)
> 
> what can i do to solve this? there must be some way in postgresql 7.4.1, 
> if there is no way to do that, i have to
> build up the whole database from scratch........there must be a way to 
> convert float to numeric values in 7.4.1 ,
> but i dont have a single clue...

There isn't a way to directly convert the type of a column in 7.4.x but 
you can duplicate the effect.

BEGIN;
ALTER TABLE fragment RENAME COLUMN x TO old_x;
ALTER TABLE fragment ADD COLUMN x numeric(10,2);
UPDATE fragment SET x = old_x;
ALTER TABLE fragment DROP COLUMN old_x;
COMMIT;

Make sure you check any functions/application code that might be 
expecting floating-point rather than numeric before you do this.

Oh, and upgrade from 7.4.1 to 7.4.7 as soon as possible.
--  Richard Huxton  Archonet Ltd


pgsql-sql by date:

Previous
From: Achilleus Mantzios
Date:
Subject: Re: ARRAY() returning NULL instead of ARRAY[] resp. {}
Next
From: Szűcs Gábor
Date:
Subject: Re: could not devise a query plan