Re: [pgadmin-hackers] Fwd: Re: Howto change column

Поиск
Список
Период
Сортировка
От Stephan Szabo
Тема Re: [pgadmin-hackers] Fwd: Re: Howto change column
Дата
Msg-id 20011107095918.W49377-100000@megazone23.bigpanda.com
обсуждение исходный текст
Ответ на Re: [pgadmin-hackers] Fwd: Re: Howto change column  (Jean-Michel POURE <jm.poure@freesurf.fr>)
Ответы Re: [pgadmin-hackers] Fwd: Re: Howto change column  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-general
On Wed, 7 Nov 2001, Jean-Michel POURE wrote:

> At 14:46 07/11/01 +0000, you wrote:
> > > >If you're willing to do a little magic to the system tables (and you
> > > >have a recent backup :) ).  You can change the atttypmod of
> > > the column
> > > >in question from 14 to 24.  This really only works on
> > > variable length
> > > >items and only to expand them, but...
> > > >
> > > >You pretty much need to do a sequence like:
> > > >select oid, relname from pg_class where
> > > relname='<tablename>'; update
> > > >pg_attribute set atttypmod=24 where attrelid=<oid from previous>
> > > >  and attname='<attributename>'
> > > >in a superuser account.
> >
> >Though technically correct, that sounds like a recipe for disaster! Of
> >course, the atttypmod doesn't always relate directly to the length of the
> >column, and even when it does, it's usually length+4

For the text types I think it's generally length+4.  For numeric, I think
it's precision*65536+scale.  The best way to find out is probably to
declare a column of the target type and check.

Of course, the best way to deal with this right now is to dump the
affected tables and reload until drop field is done.




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

Предыдущее
От: Jean-Michel POURE
Дата:
Сообщение: Re: Sourceforge on Oracle?
Следующее
От: Gordan Bobic
Дата:
Сообщение: Re: Performance Question Followup No.2