From: | Dave Page <dpage(at)postgresql(dot)org> |
---|---|
To: | Harald Armin Massa <haraldarminmassa(at)gmail(dot)com> |
Cc: | pgAdmin Support <pgadmin-support(at)postgresql(dot)org> |
Subject: | Re: Wrong OID for Primary Key and UNIQUE constraints shown in property pane |
Date: | 2007-04-04 15:52:59 |
Message-ID: | 4613C9DB.4000000@postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgadmin-support |
Harald Armin Massa wrote:
> Hello,
>
> I tried to get the definition of unique and primary key constraints via
>
> select pg_get_constraintdef(<oidofconstraint>)
>
> as oidofconstraint I put the OID displayed in pg_admins property pain
> when selecting a constraint.
>
> This failed with
>
> ERROR: could not find tuple for constraint 36099
> SQL state: XX000
>
> when I took the OID from UNIQUE and PRIMARY KEY constraints.
>
> Then I moved on and took the OID from FOREIGN KEY constraints, and got
> results...
>
>
> digging in pg_catalog.pg_constraints made me learn that pg_admin shows
> those OIDs for UNIQUE and PRIMARY key constraints "off by one", that is:
>
> if I do
>
> select pg_get_constraintdef(36100)
>
> instead of
>
> select pg_get_constraintdef(36099)
>
> I get the needed result....
>
> Please find that "-1" and add it again :)
Thanks Harald - it was showing the OID of the index, not the constraint
record. I've fixed that, and modified the code to display the index OID
as a seperate property.
Regards, Dave
From | Date | Subject | |
---|---|---|---|
Next Message | Dave Page | 2007-04-05 09:12:40 | pgAdmin packages for Solaris available |
Previous Message | Harald Armin Massa | 2007-04-04 13:41:05 | Wrong OID for Primary Key and UNIQUE constraints shown in property pane |