Re: ALTER TABLE and dropping a column

Поиск
Список
Период
Сортировка
От Josh Berkus
Тема Re: ALTER TABLE and dropping a column
Дата
Msg-id web-687910@davinci.ethosmedia.com
обсуждение исходный текст
Ответ на ALTER TABLE and dropping a column  (Frank Joerdens <frank@joerdens.de>)
Список pgsql-sql
Frank,

> ALTER TABLE foo DROP COLUMN bar;
> 
> Is there a way to do that manually and safely, e.g. by manipulating
> pg_class or pg_attribute? I found a couple of threads about it dating
> from way back in summer 2000 and early 2001, but nothing conclusive.

At this time, I would strongly recommend one of two approaches:

If the table has multiple constraints and other dependant objects:
1. pg_dump the database.
2. Edit the table definition and the data for the table from thepg_dump file.
3. Restore the database from pg_dump

If it doesn't:
1. Select the data for columns you want to keep into a new holdingtable.
2. Drop and re-build the table with the correct columns.
3. Insert the data from the holding table into the re-build table.
4. Drop the holding table.

It's a pain, I know, but not nearly the pain you will suffer if youstart mucking with the system tables ...

-Josh

______AGLIO DATABASE SOLUTIONS___________________________                                      Josh Berkus Complete
informationtechnology      josh@agliodbs.com  and data management solutions       (415) 565-7293 for law firms, small
businesses       fax 621-2533   and non-profit organizations.      San Francisco
 


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

Предыдущее
От: Frank Joerdens
Дата:
Сообщение: ALTER TABLE and dropping a column
Следующее
От: Mark Nielsen
Дата:
Сообщение: How do you return more than one variable in a plpgsql function?