Did some research on system catalogs and how to retrieve constraint triggers:

Internal triggers (addressed in "CREATE CONSTRAINT TRIGGER in SQL pane (pgAdmin 
1.14.1)" from Thu, 15 Dec 2011 15:39:37 +0200 )  have tgisinternal set to true 
in table pg_trigger.

Constraint triggers (I was talking about) have tgisinternal set to false in 
table pg_trigger.

Maybe this helps.

Regards, Michael


Von: pgadmin-support-ow...@postgresql.org 
[mailto:pgadmin-support-ow...@postgresql.org] Im Auftrag von Michael Brux
Gesendet: Montag, 30. April 2012 15:03
An: pgadmin-support@postgresql.org
Betreff: [pgadmin-support] Bug: Constraint Trigger - created with pgadmin - is 
not visible and missing in SQL Pane / Create Script

I created a new constraint trigger via pgadmin user interface:

Right click on table -> New Object -> New Trigger
Checked "Constraint Trigger" (on Definition Tab)

This Trigger is not visible in pgadmin.

On SQL pane and Create Script this trigger is missing.

Trigger works / Trigger Function is fired.

When I check this with phppgadmin I can see the trigger. Export in phppgadmin 
includes the trigger.

SQL Statement for the trigger (from phppgadmin Export) is


--

-- Name: ... ; Type: TRIGGER; Schema:  ... ; Owner: ...

--
CREATE CONSTRAINT TRIGGER <trigger-name> AFTER INSERT ON <table-name> NOT 
DEFERRABLE INITIALLY IMMEDIATE FOR EACH ROW EXECUTE PROCEDURE 
<trigger-function>;

>From my understanding this trigger should be listed in Table Constraints and 
>should be included in Create Script.

PostgreSQL 9.1.3 on x86_64-pc-linux-gnu, compiled by gcc-4.6.real 
(Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1, 64-bit (installed via Ubuntu package 
9.1.3-0ubuntu0.11.10)
pgAdmin 1.14.2 (Feb 24 2012, rev: REL-1_14_2)

Regards, Michael


Reply via email to