Raju,

these triggers are the PG implementation of foreign key constraints
checking.
They are written in C, so if you're curios how they work you will have
to check the postgres sources ;-)

HTH,
Csaba.


On Mon, 2004-08-23 at 12:06, SVGK, Raju (Raju) wrote:
> Hi,
> 
> I have a table where in lot of triggers were included in that as shown
> below. How to view/access triggers and procedures from postgresql.
> 
> I am using postgresql 7.4.1 on solaris.
> 
> regds
> -raju
> 
> 
> Process=# \d reviews
>                                         Table "public.reviews"
>       Column      |         Type          |
> Modifiers                         
> ------------------+-----------------------+---------------------------------
> --------------------------
>  review_id        | integer               | not null default
> nextval('"reviews_review_id_seq"'::text)
>  project          | character varying(32) | not null
>  phase            | character varying(32) | not null default
> 'Unknown'::character varying
>  artifact_type    | character varying(32) | not null
>  description      | text                  | 
>  author           | character varying(32) | 
>  moderator        | character varying(32) | 
>  meeting_end_date | date                  | 
>  meeting_date     | date                  | 
>  formal           | boolean               | default true
>  status           | character varying(16) | 
>  disposition      | character varying(16) | default 'To be
> decided'::character varying
>  comments         | text                  | 
>  num_attendees    | smallint              | 
>  review_size      | smallint              | 
>  kickoff_time     | smallint              | 
>  meeting_time     | smallint              | 
>  review_name      | character varying(64) | 
>  rework_effort    | integer               | default 0
> Indexes:
>     "reviews_pkey" primary key, btree (review_id)
> Triggers:
>     "RI_ConstraintTrigger_414655" AFTER DELETE ON reviews FROM documents NOT
> DEFERRABLE INITIALLY IMMEDIATE FOR EACH ROW EXECUTE PROCEDURE
> "RI_FKey_noaction_del"('<unnamed>', 'documents', 'reviews', 'UNSPECIFIED',
> 'review_id', 'review_id')
>     "RI_ConstraintTrigger_414656" AFTER UPDATE ON reviews FROM documents NOT
> DEFERRABLE INITIALLY IMMEDIATE FOR EACH ROW EXECUTE PROCEDURE
> "RI_FKey_noaction_upd"('<unnamed>', 'documents', 'reviews', 'UNSPECIFIED',
> 'review_id', 'review_id')
>     "RI_ConstraintTrigger_414658" AFTER DELETE ON reviews FROM inspectors
> NOT DEFERRABLE INITIALLY IMMEDIATE FOR EACH ROW EXECUTE PROCEDURE
> "RI_FKey_noaction_del"('<unnamed>', 'inspectors', 'reviews', 'UNSPECIFIED',
> 'review_id', 'review_id')
>     "RI_ConstraintTrigger_414659" AFTER UPDATE ON reviews FROM inspectors
> NOT DEFERRABLE INITIALLY IMMEDIATE FOR EACH ROW EXECUTE PROCEDURE
> "RI_FKey_noaction_upd"('<unnamed>', 'inspectors', 'reviews', 'UNSPECIFIED',
> 'review_id', 'review_id')
>     "RI_ConstraintTrigger_414661" AFTER DELETE ON reviews FROM defects NOT
> DEFERRABLE INITIALLY IMMEDIATE FOR EACH ROW EXECUTE PROCEDURE
> "RI_FKey_noaction_del"('<unnamed>', 'defects', 'reviews', 'UNSPECIFIED',
> 'review_id', 'review_id')
>     "RI_ConstraintTrigger_414662" AFTER UPDATE ON reviews FROM defects NOT
> DEFERRABLE INITIALLY IMMEDIATE FOR EACH ROW EXECUTE PROCEDURE
> "RI_FKey_noaction_upd"('<unnamed>', 'defects', 'reviews', 'UNSPECIFIED',
> 'review_id', 'review_id')
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
> 
>                http://www.postgresql.org/docs/faqs/FAQ.html


---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
      joining column's datatypes do not match

Reply via email to