From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Emanuel Araújo <eacshm(at)gmail(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: disable and enable trigger all when a foreign keys |
Date: | 2019-07-12 14:04:25 |
Message-ID: | 26583.1562940265@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
=?UTF-8?Q?Emanuel_Ara=C3=BAjo?= <eacshm(at)gmail(dot)com> writes:
> This is a situation when we needed fill a new store data in a family env.
> When I run "alter table a disable trigger all;" ... the foreign key
> "a_id_b_fkey" was disabled to, its ok, but I needed run a load data into
> tables "a"and "b" and table a exists a tuple that not exists in column id_b
> -> (references b(id)).
> When finished, the command "alter table a enable trigger all" was executed
> but not alert or broken, why? Cause orphan record is there.
> This behavior is common or when doing "enable trigger all" PostgreSQL
> whould show me a error or a warning?
Well, yeah, DISABLE TRIGGER ALL defeats enforcement of FK constraints.
That's why you have to be superuser to use it[1]. Perhaps disabling
only user triggers would have been the way to do what you want.
regards, tom lane
[1] The general assumption in PG is that superusers know what they're
doing.
From | Date | Subject | |
---|---|---|---|
Next Message | Adrian Klaver | 2019-07-12 14:26:23 | Re: disable and enable trigger all when a foreign keys |
Previous Message | Emanuel Araújo | 2019-07-12 13:46:53 | disable and enable trigger all when a foreign keys |