RE: Use a rule or a transaction
От | Jesus Aneiros |
---|---|
Тема | RE: Use a rule or a transaction |
Дата | |
Msg-id | Pine.LNX.4.10.10008151551040.23637-100000@jagua.cfg.sld.cu обсуждение исходный текст |
Ответ на | RE: Use a rule or a transaction ("Madel, Kurt" <KMadel@USInspect.com>) |
Список | pgsql-sql |
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:aneiros@jagua.cfg.sld.cu 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:antoiner@hansonpublications.com] > Sent: Tuesday, August 15, 2000 2:43 PM > To: Madel, Kurt > Cc: pgsql-sql@postgresql.org > 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> > <|> antoiner@hansonpublications.com <| don't mix. Never drink | > >\ antoiner@edmarketing.com >\ and derive. /< >
В списке pgsql-sql по дате отправления: