Create a trigger on module before update or insert. The philosophy of
postgres is to create a trigger based on a function previously created.
Take a look at the docs, the part on procedural languages. The book
from Momjian has one or two examples on triggers creation.
--
Jesus Aneiros Sosa
mailto:[EMAIL PROTECTED]
http://jagua.cfg.sld.cu/~aneiros
On Tue, 15 Aug 2000, Madel, Kurt wrote:
> Hello Antoine,
>
> I thought that triggers only worked for one table at a time. In this case,
> I want the class.size incremented and checked for maxsize when I perform an
> update or insert on the module table. I was under the impression that a
> trigger would only work if I was performing an insert or update on the same
> table that I wanted the trigger to act on.
>
> Please let me know if I am way off in regards to triggers.
>
> thanks,
> Kurt
>
> -----Original Message-----
> From: Antoine Reid [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, August 15, 2000 2:43 PM
> To: Madel, Kurt
> Cc: [EMAIL PROTECTED]
> Subject: Re: [SQL] Use a rule or a transaction
>
>
> On Tue, Aug 15, 2000 at 01:57:17PM -0400, Madel, Kurt wrote:
> > Hello,
> >
> > I am creating a web based (using php) class registration database with
> three
> > tables directly effected by the registration process:
>
> [snip]
>
> > My question is, would it be better (faster) to use rules or to use a
> > transaction.
>
> How about using triggers? I have used pl/pgsql triggers in the past to do
> similar things. I was not checking a maximum but definitely was keeping a
> reference count. What you want is a trigger that increments on insert,
> decrement on delete, and on update, IF the id changed, decrement the old
> one, increment the new one.. I suspect you could also have another trigger,
> on update on class, that would abort the transaction if class.size ever
> becomes bigger than maxsize..
>
> I can't really comment on performance though.....
>
> > Is there a faster way to do this with rules or a better way to do it
> > otherwise.
> >
> > TIF,
> > Kurt
>
> Hope it helps
> Antoine
>
> --
> o Antoine Reid o> Alcohol and calculus <o>
> <|> [EMAIL PROTECTED] <| don't mix. Never drink |
> >\ [EMAIL PROTECTED] >\ and derive. /<
>