Re: viewing foreign key constraints

From: Michael Fork <mfork(at)toledolink(dot)com>
To: Matt Friedman <matt(at)sprynewmedia(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: viewing foreign key constraints
Date: 2001-01-17 23:51:00
Message-ID: Pine.BSI.4.21.0101171843470.13463-100000@glass.toledolink.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Here is an SQL query that I posted to the list some time ago (its in the
list archives...)

Michael Fork - CCNA - MCP - A+
Network Support - Toledo Internet Access - Toledo Ohio

Here's the query that, given the primary key table, lists all foreign
keys, their tables, the RI type, and defereability.

SELECT pg_trigger.tgargs,
pg_trigger.tgnargs,
pg_trigger.tgdeferrable,
pg_trigger.tginitdeferred,
pg_proc.proname,
pg_proc_1.proname
FROM pg_class pg_class,
pg_class pg_class_1,
pg_class pg_class_2,
pg_proc pg_proc,
pg_proc pg_proc_1,
pg_trigger pg_trigger,
pg_trigger pg_trigger_1,
pg_trigger pg_trigger_2
WHERE pg_trigger.tgconstrrelid = pg_class.oid
AND pg_trigger.tgrelid = pg_class_1.oid
AND pg_trigger_1.tgfoid = pg_proc_1.oid
AND pg_trigger_1.tgconstrrelid = pg_class_1.oid
AND pg_trigger_2.tgconstrrelid = pg_class_2.oid
AND pg_trigger_2.tgfoid = pg_proc.oid
AND pg_class_2.oid = pg_trigger.tgrelid
AND ((pg_class.relname='<<PRIMARY KEY TABLE>>')
AND (pg_proc.proname Like '%upd')
AND (pg_proc_1.proname Like '%del')
AND (pg_trigger_1.tgrelid=pg_trigger.tgconstrrelid)
AND (pg_trigger_2.tgrelid = pg_trigger.tgconstrrelid))

On Wed, 17 Jan 2001, Matt Friedman wrote:

> How do I get a list of the foreign key constraints for a table?
>
> Matt Friedman
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2001-01-18 00:37:55 Re: Errors compiling 7.0.3 on Solaris 7
Previous Message Tom Lane 2001-01-17 23:19:13 Re: Problem with indexes