Monday, 15 September 2014

plpgsql - How to check if deletion is caused by CASCADE in PostgreSQL trigger -



plpgsql - How to check if deletion is caused by CASCADE in PostgreSQL trigger -

in pl/pgsql trigger function, there way know deletion invoked cascading delete action? have number of checks in trigger function see if deletion allowed, don't want perform if deletion cascading master table.

i can't think of built-in way check that. instead check existence of master row in master table ...

if exists ( select 1 master_table m m.master_id = old.master_id) -- run checks end if;

if it's cascading delete master row should gone already.

postgresql plpgsql cascading-deletes postgresql-9.3

No comments:

Post a Comment