Thread: Batch Table Creation - Foreign Key Problem

Batch Table Creation - Foreign Key Problem

From
Daniel Whelan
Date:
I'm trying to create a set of tables, some of which have a foreign key
pointing to other tables in the same set. The problem arises when it
tries to add a table before the table it depends on has been created. Is
there any way to defer the checking of foreign key dependancies until
after the whole transaction block?

Alternately, would I be better off creating the tables with no foreign
keys, and issuing alter statements at the end to add the keys? Thanks!

Daniel


Re: Batch Table Creation - Foreign Key Problem

From
Josh Berkus
Date:
Daniel,

> I'm trying to create a set of tables, some of which have a foreign key
> pointing to other tables in the same set. The problem arises when it
> tries to add a table before the table it depends on has been created. Is
> there any way to defer the checking of foreign key dependancies until
> after the whole transaction block?
>
> Alternately, would I be better off creating the tables with no foreign
> keys, and issuing alter statements at the end to add the keys? Thanks!

Yes, probably.  Take a look at how this is handled in pg_dump files for
version 7.2.2 and higher.

--
-Josh Berkus
 Aglio Database Solutions
 San Francisco