On Mon, 14 Apr 2025, Adrian Klaver wrote:
On 4/14/25 08:07, Laurenz Albe wrote:
On Mon, 2025-04-14 at 17:05 +0200, Dimitrios Apostolou wrote:
I meant the *referencing* table has just been
populated. I'm trying to delete the *referenced* table and I get the
error.
That would break the foreign key constraint, right?
PostgreSQL cannot allow that.
I believe the OP is disabling all triggers including system ones if I follow
correctly and possibly running a foul of;
https://www.postgresql.org/docs/current/sql-altertable.html
" Disabling or enabling internally generated constraint triggers requires
superuser privileges; it should be done with caution since of course the
integrity of the constraint cannot be guaranteed if the triggers are not
executed."
Exactly that. I learned this from pg_restore --disable-triggers, as a way
to speed-up insertion.
Since triggers are disabled, I assumed that postgresql shouldn't care
about referential integrity in TRUNCATE.
Dimitris