PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come ottenere il nome della tabella modificata in un trigger di eventi Postgres?

Le variabili disponibili per plpgsql in un trigger sono definite qui:

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

Quello che non posso dire dal testo è quante variabili "evento" ci sono. Certamente sono due:

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.

Puoi stamparli nella tua funzione per vedere se contengono le informazioni sulla tabella che stai cercando. La documentazione mostra un sacco di altre variabili che sono per eventi regolari. Non so se quelli aiuteranno, ma forse TG_TABLE_NAME è impostato?