Is it safe to increase pg_attribute.atttypmod ?
От | Nick Fankhauser |
---|---|
Тема | Is it safe to increase pg_attribute.atttypmod ? |
Дата | |
Msg-id | NEBBLAAHGLEEPCGOBHDGEEPDEPAA.nickf@ontko.com обсуждение исходный текст |
Ответы |
Re: Is it safe to increase pg_attribute.atttypmod ?
|
Список | pgsql-admin |
Hi- We need to increase the length of a varchar field, and couldn't find a way to do it using "alter table". Since the alternative is copying & re-creating a very large table, we starting poking around under the hood & found that pg_attribute.atttypmod seems to be always equal to the length plus 4 in the case of varchar fields. We created a test table and altered the varchar length on a field by increasing pg_attribute.atttypmod, and the length seemed to change and act as expected. The update to change a varchar(10) field to varchar(40) looked like this: update pg_attribute set atttypmod = 44 where attrelid = ( select oid from pg_class where relname = 'test' ) and attname = 'oldtest' ; Is this a smart thing to do? Are there other hidden related bits of data that will come back to haunt us later? -Nick -------------------------------------------------------------------------- Nick Fankhauser nickf@ontko.com Phone 1.765.935.4283 Fax 1.765.962.9788 Ray Ontko & Co. Software Consulting Services http://www.ontko.com/
В списке pgsql-admin по дате отправления: