On 5/4/23 07:03, Justin wrote:


On Thu, May 4, 2023 at 9:49 AM DAVID ROTH <adapt...@comcast.net <mailto:adapt...@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 <https://www.postgresql.org/docs/current/rules.html>

That is wrong.

See

https://www.postgresql.org/docs/current/sql-createtrigger.html

The following table summarizes which types of triggers may be used on tables, views, and foreign tables:


Yes if you have an INSERT/UPDATE/DELETE rule on a view  that inserts into a table then that table's triggers will be executed.

Please note RULES should  be avoided beyond the use case for VIEWS. RULES are executed very early in the query tree; it is not trivial to write rules on Tables.

Thanks

--
Adrian Klaver
adrian.kla...@aklaver.com



Reply via email to