On 7/2/05, Dawid Kuroczko <qnex42@gmail.com> wrote:
> On 7/1/05, Andrus <noeetasoftspam@online.ee> wrote:
> > In Postgres 8 I tried commad
> >
> > DELETE FROM customer WHERE id=123
> >
> > but got an error
> >
> > ERROR: update or delete on "customer" violates foreign key constraint
> > "invoice_customer_fkey" on "invoice"'
> >
> > How to determine the primary key of invoice table which causes this error
> > in generic way ?
>
> Well, I am not sure, but information you want may be contained in
> information_schema.key_column_usage and
> information_schema.referential_constraints
>
[,,,]
I forgot to add, this is of course a "simplistic" approach which:
1. may be simply wrong
2. assumes data is available to user in nformation_schema (I guess the
information schema lists only data owned by user; yet I am not sure
about that).
3. assumes foreign keys have really simple set up (no FKs depending on
FKs depending on FKs...)
4. and so on.
In other words, best approach would be "know thy schema" in the
application. ;)))
Regards,
Dawid