Search Postgresql Archives

Re: Alter definition of a column

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 1/20/07, Shoaib Mir <shoaibmir@xxxxxxxxx> wrote:
Should help --> ALTER TABLE tablename ALTER columname TYPE text;

I was looking for a way to alter a column from varchar(n) to text
without using the alter command and consequently touching every single
row.  Below is sql which seems to work, but is it advisable to do such
shenanigans?  (are varchar and text the same thing)?

kelly=# create table foo( c1 varchar(4) not null, c2 text not null );
CREATE TABLE
kelly=#
kelly=# update pg_attribute set atttypid=25, atttypmod=-1
kelly-# where attname = 'c1' and attrelid =
kelly-#     (select oid from pg_class where relname = 'foo');
UPDATE 1
kelly=#
kelly=# \d foo
   Table "public.foo"
Column | Type | Modifiers
--------+------+-----------
c1     | text | not null
c2     | text | not null


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux