Re: [Pgsql-ayuda] modificación de constraints

From: Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl>
To: "Pablo E(dot) Siciliano" <psiciliano(at)puentenet(dot)com>
Cc: pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx
Subject: Re: [Pgsql-ayuda] modificación de constraints
Date: 2003-09-24 18:21:34
Message-ID: 20030924182134.GF3237@dcc.uchile.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On Wed, Sep 24, 2003 at 09:50:13AM -0300, Pablo E. Siciliano wrote:

> Tengo que modificar un constraint de una tabla, y vi que en alter table hay
> la posibilidad de tirarla abajo y volver a crearla, pero no encontré forma
> de mofificarla directamente. ¿Alguien conoce alguna manera, o sabe
> positivamente que no se puede (Como yo me imagino que no se puede)?

Cual es el problema con botarla y recrearla?

BEGIN;
DROP CONSTRAINT ...
CREATE CONSTRAINT ...
COMMIT;

Dado que los DDL en Postgres son 'transaccionables', para todas las
transacciones concurrentes habra una de las restricciones activas, en
todo momento.

Oracle (y otros) no pueden hacer eso; por este motivo necesitan trucos
sucios como "modificar una restriccion" para asegurar no perder la
integridad en ningun momento.

--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"In a specialized industrial society, it would be a disaster
to have kids running around loose." (Paul Graham)

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2003-09-24 18:24:18 Re: [Pgsql-ayuda] Auxilio com SELECT NEXTVAL.....Por Favor
Previous Message Alvaro Herrera 2003-09-24 18:15:15 Re: [Pgsql-ayuda] Base de datos corrupta