Re: Alter definition of a column

Поиск
Список
Период
Сортировка
От Shoaib Mir
Тема Re: Alter definition of a column
Дата
Msg-id bf54be870701201232k7c7f961m28ec5e450a83e53e@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Alter definition of a column  ("Kelly Burkhart" <kelly.burkhart@gmail.com>)
Список pgsql-general
I haven't used it this way, anyone else who did might be able to comment on it. Why will you not like to use the ALTER table command? I think a text should be use in case you don't know the limit for characters (much faster too in that case I guess) in a column but if you know the limits then you should be using varchar(n).

-----------------
Shoaib Mir
EnterpriseDB (www.enterprisedb.com)

On 1/20/07, Kelly Burkhart < kelly.burkhart@gmail.com> wrote:
On 1/20/07, Shoaib Mir < shoaibmir@gmail.com> 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

В списке pgsql-general по дате отправления:

Предыдущее
От: Ron Johnson
Дата:
Сообщение: Re: Help : Microsoft SQL Server equivalents in
Следующее
От: "Josh Williams"
Дата:
Сообщение: Re: Alter definition of a column