Re: Restriccion CHECK

From: Diego Gil <diego(at)adminsa(dot)com>
To: Juanky Moral <juanky(dot)moral(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Restriccion CHECK
Date: 2005-09-06 18:01:11
Message-ID: 1126029671.11409.15.camel@roadwarrior.adminsa.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

CHECK (rut IS NULL = dv IS NULL) se verifica cuando :

1) rut y dv son ambos nulos
2) rut y dv son ambos NO nulos

O sea que si uno de los valores es nulo, el otro debe serlo también. O
si uno de los valores es NO NULO el otro también debe ser NO NULO.

Inicialmente es un poco confuso, pero es una solución muy interesante.

Diego.

El mar, 06-09-2005 a las 19:15 +0200, Juanky Moral escribió:
> El 6/09/05, Alvaro Herrera<alvherre(at)alvh(dot)no-ip(dot)org> escribió:
> > On Tue, Sep 06, 2005 at 06:25:55PM +0200, Juanky Moral wrote:
> >
> > > Y digo yo: ¿no funcionaría igual con AND y, tratandose de
> > > comparaciones booleanas, más claro?:
> > >
> > > (rut IS NULL AND dv IS NULL)
> >
> > No, porque eso impide que definas cualquiera de los dos campos :-)
> No entiendo lo que quieres decir. Explícate mejor.
> Mira lo que yo trataba de decir:
>
> gnosis=# create table prueba (A boolean, B boolean);
> CREATE TABLE
> gnosis=# insert into prueba values (true,false);
> INSERT 883872 1
> gnosis=# alter table prueba add constraint prueba_chk check (a not is
> null and b not is null);
> gnosis=# alter table prueba add constraint prueba_chk check (a is not
> null and b is not null);
> ALTER TABLE
> gnosis=# update prueba set a = null;
> ERROR: new row for relation "prueba" violates check constraint "prueba_chk"
>
> Por cierto, me alegra estar otra vez aquí después de las vacaciones ;-)
>
>
> >
> > Las tabla de verdad son
> >
> > = A=t A=f
> > B=t t f
> > B=f f t
> >
> > AND A=t A=f
> > B=t t f
> > B=f f f
> >
> > Guau, eso si que es confuso :-)
> >
> > --
> > Alvaro Herrera -- Valdivia, Chile Architect, www.EnterpriseDB.com
> > "Cuando miro a alguien, más me atrae cómo cambia que quién es" (J. Binoche)
> >
>
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2005-09-06 18:01:24 Re: Busquedas Texto
Previous Message Juanky Moral 2005-09-06 17:18:25 Re: Restriccion CHECK