How to get the name of the altered table in a Postgres event trigger?

前端 未结 2 1249

in a postgres database, have table base1 that is the base table for view view1.

if a column in base1 is created,

2条回答
  •  野的像风
    2021-01-19 02:57

    The variables available to plpgsql in a trigger are defined here:

    http://www.postgresql.org/docs/9.3/static/plpgsql-trigger.html#PLPGSQL-EVENT-TRIGGER-EXAMPLE

    What I can't tell from the text is how many 'event' variables there are. Certainly there are two:

    TG_EVENT
    Data type text; a string representing the event the trigger is fired for.
    
    TG_TAG
    Data type text; variable that contains the command tag for which the trigger is fired.
    

    You can print these in your function to see if they contain the table information you are looking for. The documentation shows a bunch of other variables that are for regular events. I don't know if those will help, but, perhaps TG_TABLE_NAME is set?

提交回复
热议问题