Re: cambiar el schema de una tabla en el schema public

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Jaime Casanova <systemguards(at)gmail(dot)com>
Cc: Gustavo Maximiliano Cortez <patesi(at)gmail(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: cambiar el schema de una tabla en el schema public
Date: 2005-09-02 02:25:50
Message-ID: 20050902022550.GF31519@surnet.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On Thu, Sep 01, 2005 at 07:15:51PM -0500, Jaime Casanova wrote:
> On 8/31/05, Gustavo Maximiliano Cortez <patesi(at)gmail(dot)com> wrote:
> > Hola, mi pregunta está en el asunto. Se puede cambiar el schema public
> > de una tabla a un schema que acabo de crear?
>
> No sin recrear la tabla en el otro schema...

En realidad se puede hacer, si estas dispuesto a cambiar los catalogos
de sistema manualmente. Pero tiene que hacerse con cuidado, moviendo
al mismo tiempo los indices, las secuencias, y no se que mas tenga que
moverse. (Cualquier cosa que tenga un "namespace" y que este asociado a
una tabla -- perseguir las dependencias usando pg_depend es una manera
facil de saberlo).

Claro que jugar con los catalogos es engorroso y corromperlo todo es
bastante sencillo. La solucion de recrear la tabla puede ser lo mas
simple:

CREATE TABLE otroschema.tabla AS SELECT * FROM unschema.tabla

claro que hay que recrear las vistas, llaves foraneas, valores por
defecto, etc ...

--
Alvaro Herrera -- Valdivia, Chile Architect, www.EnterpriseDB.com
"El día que dejes de cambiar dejarás de vivir"

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Paolo Lopez 2005-09-02 09:05:25 Re: Problemas con tildes y eÑes
Previous Message Alvaro Herrera 2005-09-02 02:22:58 Re: mensajes de excepccion en esañol