Re: Trigger questions - Mailing list pgsql-general

From David G. Johnston
Subject Re: Trigger questions
Date
Msg-id CAKFQuwbXO=WTBVrkZCe25AR+bphP+_L6xx7rJWLOdST70hGt8A@mail.gmail.com
Whole thread Raw
In response to Re: Trigger questions  (Justin <zzzzz.graf@gmail.com>)
List pgsql-general
On Thu, May 4, 2023 at 7:04 AM Justin <zzzzz.graf@gmail.com> wrote:


On Thu, May 4, 2023 at 9:49 AM DAVID ROTH <adaptron@comcast.net> wrote:
1) Can I create a trigger on a view?
2) Do triggers cascade?

Say I have an insert trigger on a table.
And, I have an insert trigger on a view that references this table
If I do an insert on the view, will both triggers fire?

Can not have triggers on Views,  Views use  RULES  which are DO INSTEAD.
https://www.postgresql.org/docs/current/rules.html

Our users need not care or even know about this particular implementation detail of views.  For them, views are a fundamental concept.

The description of create trigger makes is perfectly clear that views are a valid "table-like" target for a trigger.

> CREATE TRIGGER creates a new trigger. CREATE OR REPLACE TRIGGER will either create a new trigger, or replace an existing trigger. The trigger will be associated with the specified table, view, or foreign table and will execute the specified function function_name when certain operations are performed on that table.


Depending on the view definition, the need for a trigger may be removed since some views are auto-updatable.

David J.

pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: Trigger questions
Next
From: "Nagendra Mahesh (namahesh)"
Date:
Subject: Re: Invoking SQL function while doing CREATE OR REPLACE on it