From: | --= Tono =-- <tonodarmodjo(at)yahoo(dot)com> |
---|---|
To: | pgsql-hackers(at)postgresql(dot)org |
Subject: | INSTEAD OF trigger on VIEWs |
Date: | 2005-05-23 13:15:18 |
Message-ID: | 20050523131519.74986.qmail@web53501.mail.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Is there any plans to create an INSTEAD OF trigger on
VIEWS? I have view which consists of a master and
detail table. When a row is inserted into the view,
the view needs to figure out if the master record
already exsists. If the record does not exists in the
master table, then insert into the master and the
detail table. If the record already exists in the
master, just insert into detail table. Conversely, if
a delete record is performed on the view, the view
needs to figure out if it only needs to delete from
the detail table, or should it also delete from the
master table when all the detail records are already
deleted. In Oracle this is easily done using INSTEAD
OF triggers. INSTEAD OF triggers can only be created
for VIEWs. The purpose of it is to "short-circuit" the
event (INSERT, UPDATE or DELETE) and perform whatever
is specified in the trigger.
CREATE OR REPLACE TRIGGER schema.trigger_name INSTEAD
OF INSERT ON object_name
BEGIN
-- Perform the following instead --
END;
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
From | Date | Subject | |
---|---|---|---|
Next Message | Richard Huxton | 2005-05-23 13:40:55 | Re: subquery returning array |
Previous Message | Bruce Momjian | 2005-05-23 13:13:31 | Re: PATCH to allow concurrent VACUUMs to not lock each other |