From: Jan Wieck <JanWieck@Yahoo.com>
To: Stephan Szabo <sszabo@megazone.bigpanda.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Enio Schutt Junior <enio@pmpf.rs.gov.br>
Cc: pgsql-sql@postgresql.org
Subject: Re: Sometimes referential integrity seems not to work
Date: Mon, 02 Feb 2004 11:54:42 -0500
Message-ID: <401E80D2.9080909@Yahoo.com> (raw)
In-Reply-To: <20040131214655.W11452@megazone.bigpanda.com>
References: <20040126175147.B3BD046E09@mail.passofundo.rs.gov.br>
<20040131124500.H98710@megazone.bigpanda.com>
<9148.1075592448@sss.pgh.pa.us>
<20040131214655.W11452@megazone.bigpanda.com>
Stephan Szabo wrote:
> On Sat, 31 Jan 2004, Tom Lane wrote:
>
>> Stephan Szabo <sszabo@megazone.bigpanda.com> writes:
>> > On Mon, 26 Jan 2004, Enio Schutt Junior wrote:
>> >> In a database I am working, I sometimes have to delete all the records in
>> >> some tables. According to the referential integrity defined in the creation
>> >> of the tables, postmaster should not delete the records, but it does. I have
>> >> used the following commands: "delete from table_1" and "truncate table_1".
>> >> ...
>> >> can the postgres user delete records despite referential integrity?
>>
>> I think the first PG release or two that had TRUNCATE TABLE would allow
>> you to apply it despite the existence of foreign-key constraints on the
>> table. Recent releases won't though.
>
> Yeah, truncate didn't worry me much, but the implication that delete from
> table_1; worked did.
TRUNCATE cannot be used inside of a transaction, and since 7.3 it checks
for foreign keys. So I guess Enio is getting but ignoring the error
message when trying the delete, but then the truncate does the job in
his pre-7.3 database.
Jan
--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#================================================== JanWieck@Yahoo.com #
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: JanWieck@Yahoo.com, sszabo@megazone.bigpanda.com, tgl@sss.pgh.pa.us, enio@pmpf.rs.gov.br
Subject: Re: Sometimes referential integrity seems not to work
In-Reply-To: <401E80D2.9080909@Yahoo.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox