pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Alain Lavigne <alavigne@zaq.com>
To: pgsql-sql@postgresql.org
Subject: SQL question
Date: Tue, 6 Feb 2001 08:37:41 -0500
Message-ID: <95ouf1$hp3$1@news.tht.net> (raw)

I'm trying to extract references (relationships) between tables for the
purpose of reverse/forward engineer from a modeling tool called
PowerDesigner.

Here is the sql:

select u.usename,
       p.relname,
       v.usename,
       c.relname,
       t.tgconstrname,
       dumpref(t.tgargs, 4),  ** (I know this function does not exist in
postgresql)
       dumpref(t.tgargs, 5)
from   pg_trigger t,
       pg_proc f,
       pg_class p,
       pg_class c,
       pg_user u,
       pg_user v
where  1=1
and    f.proname='RI_FKey_check_ins'
and    t.tgfoid=f.oid
and    c.oid=t.tgrelid
and    p.oid=t.tgconstrrelid
and    u.usesysid=p.relowner
and    v.usesysid=c.relowner;

I always get the following message:

** << Error while executing the query; ERROR: Function 'dumpref(bytea,
int4)'
does not exist Unable to identify a function that satisfies the given
argument types You may need to add explicit typecasts >>

Since integrity constraints are done using triggers, i makes sense that I
can reverse engineer those FK constraint from the pg_trigger table.
Unfortunately I don't know how to extract the information from the "tgargs"
field.

CAN ANYONE HELP ??





view thread (19+ messages)  latest in thread

Message-ID: <95ouf1$hp3$1@news.tht.net>
Permalink:  ../95ouf1$hp3$1@news.tht.net/
Also on:    postgresql.org/message-id/95ouf1$hp3$1@news.tht.net

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: alavigne@zaq.com
  Subject: Re: SQL question
  In-Reply-To: <95ouf1$hp3$1@news.tht.net>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox