Re: Restriccion CHECK

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

2005/9/6, Diego Gil <diego(at)adminsa(dot)com>:
> 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

OK. ¡Ahora lo pillé!
Gracias
>
> 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)
> > >
> >
> >
>
>

--
Juanky Moral
"Tendré que moverme más rápido: el horizonte brilla eléctrico."
(Horizonte Eléctrico - www.losdeltonos.com )

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2005-09-06 18:05:19 Re: Restriccion CHECK
Previous Message Alvaro Herrera 2005-09-06 18:01:24 Re: Busquedas Texto