Re: Triggers Help

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Paolo Lopez <murphyperu(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Triggers Help
Date: 2005-08-20 19:06:00
Message-ID: 20050820190600.GB21765@surnet.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On Sat, Aug 20, 2005 at 12:42:10PM -0500, Paolo Lopez wrote:

> Mi caso concreto es que tengo una tabla que tiene como 8 campos, pero
> de ellas solo requiero que 2 de ellas ( usuario y año ) se validen. Es
> decir, que solo 1 usuario este dentro de 1 año, a pesar de que hay
> otras 6 llaves que elevan las combinaciones posibles.

La solucion no necesariamente es un trigger; has pensado en hacer una
restriccion UNIQUE que represente lo que quieres? Si no entiendo mal
deberia bastar con crear una restriccion unique en (usuario, año).

> Si hago "trigger before insert for each row" tendria que hacer algo
> dentro del trigger como :
>
> IF (
> ( select count(*) from tablita where idUsuario="le doy el dato" and
> idAño="le doy el dato" ) = 0
> )
> entonces dejar registrar
>
> Pero esto es "real" ante las concurrencias ???

No.

--
Alvaro Herrera (<alvherre[a]alvh.no-ip.org>)
"En las profundidades de nuestro inconsciente hay una obsesiva necesidad
de un universo lógico y coherente. Pero el universo real se halla siempre
un paso más allá de la lógica" (Irulan)

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Paolo Lopez 2005-08-20 19:21:44 Re: Triggers Help
Previous Message Paolo Lopez 2005-08-20 17:42:10 Triggers Help