Wes wrote:
> On 6/20/06 5:07 AM, "Florian G. Pflug" <fgp@phlo.org> wrote:
>
>> My suggestion was to create the fk _before_ loading the data, and disable it
>> similarly to what "--disable-triggers" doest. It turned out, however, that a
>> FK always depends on a unique index (be it a primary key, or not), which
>> prevents
>> my plan from working :-(
>
> That was a great idea - too bad it didn't pan out.
>
> I don't suppose there's any (reasonable) way to directly insert into the
> system tables to create the constraint? I could knock almost 2 days off of
> the almost 4 days to reload if I could solve this.
I believe that it's possible, but it's hard to get right. A foreign key
consists of at least
.) The actual definition in pg_constraints or so
.) A trigger
.) Various reconds in pg_depend
To be on the safe side, you'd need to look at the sourcecode, and miminc
what is done there.
Maybe you could ask at some postgresql support companies how much effort it would
be to add a "without check" flag to "alter table add constraint foreign key", and
how much they'd charge for it...
greetings, Florian Pflug