Re: Why can't I put a BEFORE EACH ROW trigger on a view? - Mailing list pgsql-general

From Karl O. Pinc
Subject Re: Why can't I put a BEFORE EACH ROW trigger on a view?
Date
Msg-id 1172366112l.30468l.8l@mofo
Whole thread Raw
In response to Re: Why can't I put a BEFORE EACH ROW trigger on a view?  ("Webb Sprague" <webb.sprague@gmail.com>)
List pgsql-general
On 02/24/2007 06:51:27 PM, Webb Sprague wrote:
>> .  I have _additional_
>> constraints to place on modifications done through
>> views, and trickyness involved in modifying the
>> underlying tables.
>
> Write a function foo that returns a set, then a view:  "create view as
> select * from foo()".  Incorporate all the trickiness in the function,
> including variables, multiple temporary tables, whatever you need.

I tried that, and have already sent a message to this list about
it.  The function needs to be passed NEW.* in order to know
what data it's looking at.  When you try to do that you get
the following error message:

  ERROR: function expression in FROM may not refer to other relations
of same query level

See:
http://archives.postgresql.org/pgsql-general/2007-02/msg01074.php

Karl <kop@meme.com>
Free Software:  "You don't pay back, you pay forward."
                  -- Robert A. Heinlein


pgsql-general by date:

Previous
From: "Karl O. Pinc"
Date:
Subject: Re: Why can't I put a BEFORE EACH ROW trigger on a view?
Next
From: "Karl O. Pinc"
Date:
Subject: Re: Why can't I put a BEFORE EACH ROW trigger on a view?