Received: from maia.hub.org (maia-5.hub.org [200.46.204.29]) by mail.postgresql.org (Postfix) with ESMTP id 24EDDB5DCC2 for ; Fri, 21 Oct 2011 14:04:24 -0300 (ADT) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.204.29]) (amavisd-maia, port 10024) with ESMTP id 29673-02-5 for ; Fri, 21 Oct 2011 17:04:17 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.8.0-rc2 Received: from lo.gmane.org (lo.gmane.org [80.91.229.12]) by mail.postgresql.org (Postfix) with ESMTP id BDD51B5DCCD for ; Fri, 21 Oct 2011 14:04:17 -0300 (ADT) Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1RHIVz-0004Qb-P7 for pgsql-sql@postgresql.org; Fri, 21 Oct 2011 19:04:15 +0200 Received: from ppp-93-104-163-104.dynamic.mnet-online.de ([93.104.163.104]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 21 Oct 2011 19:04:15 +0200 Received: from spam_eater by ppp-93-104-163-104.dynamic.mnet-online.de with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 21 Oct 2011 19:04:15 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: pgsql-sql@postgresql.org From: Thomas Kellerer Subject: Re: how to temporally disable foreign key constraint check Date: Fri, 21 Oct 2011 19:04:14 +0200 Lines: 21 Message-ID: References: <4EA17562.4030202@encs.concordia.ca> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: ppp-93-104-163-104.dynamic.mnet-online.de User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.21) Gecko/20090302 Thunderbird/2.0.0.21 Mnenhy/0.7.5.666 In-Reply-To: <4EA17562.4030202@encs.concordia.ca> X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=-2.393 tagged_above=-5 required=5 tests=BAYES_00=-1.9, FREEMAIL_FROM=0.001, RP_MATCHES_RCVD=-0.504, T_TO_NO_BRKTS_FREEMAIL=0.01 X-Spam-Level: X-Archive-Number: 201110/47 X-Sequence-Number: 35931 Emi Lu wrote on 21.10.2011 15:36: > Good morning, > > > Is there a way to temporally disabled foreign key constraints something like > > SET FOREIGN_KEY_CHECKS=0 > > When population is done, will set FOREIGN_KEY_CHECKS=1 > > Thanks a lot! > Emi > You can define the FKs as "DEFERRABLE INITIALLY IMMEDIATE". Then at the start of your transaction you can defer constraint checking until you commit everything using: SET CONSTRAINTS ALL DEFERRED; Thomas