From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | "Williamson, Michael" <Michael(dot)Williamson(at)tamucc(dot)edu> |
Cc: | "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: v9.1, DROP TRIGGER IF EXISTS behaving oddly |
Date: | 2016-01-13 22:24:11 |
Message-ID: | 1413.1452723851@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
"Williamson, Michael" <Michael(dot)Williamson(at)tamucc(dot)edu> writes:
> I'm attempting to drop a trigger that may or may not exist, so am using
> the "IF EXISTS" clause. This works fine for tables, views, functions,
> domains, and types, but for some reason seems to be ignored for
> triggers. I'd expect to see more about this online if it were a bug,
> so I'm thinking I may be missing something obvious.
> Example:
> DROP TRIGGER IF EXISTS udf_customer_update_trigger ON customer;
> Expected Output:
> NOTICE:trigger "udf_customer_update_trigger" does not exist, skipping
> Observed Output:
> ERROR:relation "udf_customer_update_trigger" does not exist
> Environment:
> CentOS 6.6
> postgresql91-server-9.1.14-1PGDG.rhel6.x86_64
This has worked the way you're imagining since (I think) 9.4. Before
that the "if exists" semantics only applied to the trigger itself,
not to the relation.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Adrian Klaver | 2016-01-13 22:27:09 | Re: v9.1, DROP TRIGGER IF EXISTS behaving oddly |
Previous Message | Williamson, Michael | 2016-01-13 22:14:33 | v9.1, DROP TRIGGER IF EXISTS behaving oddly |