Re: alter de una tabla

From: Jaime Casanova <systemguards(at)gmail(dot)com>
To: ROBERTO FARIAS <robertofarias0(at)hotmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: alter de una tabla
Date: 2005-11-29 15:13:00
Message-ID: c2d9e70e0511290713h1844c598j4732fb922818ecab@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On 11/29/05, ROBERTO FARIAS <robertofarias0(at)hotmail(dot)com> wrote:
> Hola a todos:
> Alguien me puede ayudar en lo siguiente:
> Necesito agregar un campo en una tabla en el medio de otros campos.
> Esa tabla tiene clave foránea apuntando a otras tablas y es apuntada también
> por otras tablas.
> Estoy trabajando con Postgresql 7.3
> Cómo hago para agregar ese campo y no perder los datos y tampoco perder las
> referencias?
> Muchas Gracias.
> Saludos.
>
>

CREATE TABLE tt (campos mas el nuevo);
-- crea todos los indices, fks, checks etc..
-- quiza puedas hacer pg_dump y sacar solo el schema de la tabla original
-- y le cambias el nombre
INSERT INTO tt SELECT campos + valor para el nuevo (o null) FROM tabla;
DROP TABLE tabla;
-- si tienes vistas basadas en esta tabla tendras que volarlas tambien
-- y reconstruirlas
ALTER TABLE tt RENAME TO tabla;

--
Atentamente,
Jaime Casanova
(DBA: DataBase Aniquilator ;)

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Gunnar Wolf 2005-11-29 15:15:12 Re: Ayuda recuperar registros aleatorios en postgres 8.0
Previous Message Mario Soto Cordones - Venezuela 2005-11-29 15:04:16 Re: alter de una tabla