Re: BUG #19064: Trigger allows creation with invalid column references but fails at runtime
Rahila Syed <rahilasyed90@gmail.com>
From: Rahila Syed <rahilasyed90@gmail.com>
To: ketan.bhatiya@lenditt.com, pgsql-bugs@lists.postgresql.org
Date: 2025-09-26T12:59:45Z
Lists: pgsql-bugs
Hi > Suggestion / Proposed Improvement > PostgreSQL should validate column references at trigger creation time, not > just at runtime. > If a column does not exist in the target table (Orders in this example), > trigger creation should fail immediately with a clear error message. > > This behaviour is by design in PostgreSQL. The CreateTrigger() is responsible for creating a dependency between trigger and its underlying pl/pgsql function. The pl/pgsql function is only parsed when it is executed for the first time. This approach allows for flexibility, such as adding columns to a table after a trigger has been created. On the other hand, if a column existing at the time of trigger creation is later removed, validating at creation time would not offer much advantage in these situations. Thank you, Rahila Syed