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. /<