CREATE TRIGGER ... FOR EACH STATEMENT

From: Mischa Sandberg <ischamay(dot)andbergsay(at)activestateway(dot)com>
To: pgsql-sql(at)postgresql(dot)org
Subject: CREATE TRIGGER ... FOR EACH STATEMENT
Date: 2004-11-04 22:16:29
Message-ID: 1Txid.94791$9b.89312@edtnps84
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

I notice a dearth of description of the FOR EACH STATEMENT flavour of
triggers, even though OLD_TABLE and NEW_TABLE are mentioned.

After years of Sybase & MSSQL, being able to deal with the entire
INSERTED/DELETED rowsets in a trigger, rather than nibbling away
row by row, has been a great efficiency boost. In fact, the only I've
resorted to FOR EACH ROW triggers is where joining OLD_TABLE and
NEW_TABLE by primary key burned the CPU --- both pseudo-tables being
very large in some updates, and perforce having no indexes ...

I can see from src/backend/command/trigger.c that
ExecASInsertTriggers() would have a hard time getting at the equivalent
of OLD_TABLE and NEW_TABLE, ExecBSInsertTriggers even worse.

Anyone else out there who feels this would be a significant
enhancement?

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Mischa Sandberg 2004-11-05 03:27:44 Re: CREATE TRIGGER ... FOR EACH STATEMENT
Previous Message Oliver Elphick 2004-11-04 17:46:47 Re: Group by and aggregates