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 ??


Reply via email to