Re: convert custom datatype to array - Mailing list pgsql-general

From Alvaro Herrera
Subject Re: convert custom datatype to array
Date
Msg-id 20071119150846.GB18602@alvh.no-ip.org
Whole thread Raw
In response to convert custom datatype to array  (Mike Charnoky <noky@nextbus.com>)
Responses Re: convert custom datatype to array  (Mike Charnoky <noky@nextbus.com>)
List pgsql-general
Mike Charnoky wrote:
> Our database schema was designed before postgresql supported arrays and
> contains a custom type which is basically a float4 array.  I would like
> to clean things up and convert the custom datatype to float4[], as this
> would obviate the need for us to compile a custom shared object.  We are
> hitting problems with pg8.3 and I would rather just drop the custom stuff.
>
> Problem is, I cannot do an ALTER COLUMN:
>
> mydb=# alter table mytable alter column mycolumn float4[];
> ERROR:  column "mycolumn" cannot be cast to type "float4[]"

You can specify a USING clause to let the system know exactly how to
convert your type to float[].  I suspect you can use float4in() and
something to read out your type into the format that float4in expects (a
hacked up version of your out function perhaps).

--
Alvaro Herrera                  http://www.amazon.com/gp/registry/5ZYLFMCVHXC
"La tristeza es un muro entre dos jardines" (Khalil Gibran)

pgsql-general by date:

Previous
From: "Josh Harrison"
Date:
Subject: postgresql storage and performance questions
Next
From: Tom Lane
Date:
Subject: Re: possible to create multivalued index from xpath() results in 8.3?