Trigger which fires on commit? (Multi-table intergrity constraint)

Started by Stephane Bortzmeyerover 23 years ago2 messagesgeneral
Jump to latest
#1Stephane Bortzmeyer
bortzmeyer@nic.fr

Hello,

[Question already asked but may be badly explained. I rephrase it.]

I have several tables and an integrity constraint which spans several
tables (for an Internet registry, a table Domains, a table Hosts and a
table Nameservers which links them: a Domain needs >= 2
nameservers). The tables are updated in the same transaction and I
want the database to be OK after the commit.

I can check many things from triggers but apparently triggers can only
be fired for a statement (like INSERT), not for a whole transaction.

Oracle supports ON COMMIT triggers and they solve nicely this
problem. But apparently PostgreSQL does not. Any idea?

#2Richard Huxton
dev@archonet.com
In reply to: Stephane Bortzmeyer (#1)
Re: Trigger which fires on commit? (Multi-table intergrity constraint)

On Thursday 08 Aug 2002 9:22 am, Stephane Bortzmeyer wrote:

Hello,

[Question already asked but may be badly explained. I rephrase it.]

I have several tables and an integrity constraint which spans several
tables (for an Internet registry, a table Domains, a table Hosts and a
table Nameservers which links them: a Domain needs >= 2
nameservers). The tables are updated in the same transaction and I
want the database to be OK after the commit.

I can check many things from triggers but apparently triggers can only
be fired for a statement (like INSERT), not for a whole transaction.

Oracle supports ON COMMIT triggers and they solve nicely this
problem. But apparently PostgreSQL does not. Any idea?

How about a num_ns_per_domain table - insert into that and add a constraint
there. Not sure about performance issues.

- Richard Huxton