Re: alter varchar() column length? - Mailing list pgsql-general

From Pavel Stehule
Subject Re: alter varchar() column length?
Date
Msg-id 162867790801110710g3c686010qcdd852e721e7a559@mail.gmail.com
Whole thread Raw
In response to alter varchar() column length?  ("Gauthier, Dave" <dave.gauthier@intel.com>)
List pgsql-general
Hello

CREATE TABLE foog(a varchar(10));
ALTER TABLE foog ALTER COLUMN a TYPE varchar(30);

postgres=# \d foog
            Table "public.foog"
 Column |         Type          | Modifiers
--------+-----------------------+-----------
 a      | character varying(30) |

regards
Pavel Stehule

On 11/01/2008, Gauthier, Dave <dave.gauthier@intel.com> wrote:
>
>
>
>
> Is there a way to alter a varchar column's length?  Maybe something like
> "alter table foo alter column xyz varchar(256)".
>
>
>
> My alternative seems very messy...
>
> -          alter table, add a new column with the desired varchar length.
> call it "temp"
>
> -          insert into "temp" the value of the old column.
>
> -          alter table, drop the old column (messing up all the indexes on
> that column in the process I suppose)
>
> -          alter table, add a new column with the same name as the one you
> just deleted, only with the desired length
>
> -          insert into that new column the value in "temp"
>
> -          alter table, drop "temp"
>
> -          recreate all the indexes
>
>
>
> Thanks
>
> -dave

pgsql-general by date:

Previous
From: "Gauthier, Dave"
Date:
Subject: alter varchar() column length?
Next
From: Thomas Kellerer
Date:
Subject: Re: alter varchar() column length?