dbTalk Databases Forums  

[BUGS] BUG #1307: Possible bug inheritance/referential integrity

mailing.database.pgsql-bugs mailing.database.pgsql-bugs


Discuss [BUGS] BUG #1307: Possible bug inheritance/referential integrity in the mailing.database.pgsql-bugs forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
PostgreSQL Bugs List
 
Posts: n/a

Default [BUGS] BUG #1307: Possible bug inheritance/referential integrity - 11-06-2004 , 06:14 AM







The following bug has been logged online:

Bug reference: 1307
Logged by: Thomas Jacob

Email address: jacob (AT) internet24 (DOT) de

PostgreSQL version: 7.4.5

Operating system: Gentoo Linux, Kernel 2.6.7

Description: Possible bug inheritance/referential integrity

Details:

Rows inserted into a table "sub" inherited from a table
"super" do not seem to exist in the super-table from the point of
view of the foreign key constraint checker in references to the
"super"-table, even though a SELECT query displays the rows that
were inserted into sub also in super, as should be (See example
provided).

But they should exist, shouldn't they? Or do I simply not
understand PostgreSQL's inheritance model correctly?

CREATE TABLE super (id INT PRIMARY KEY);
CREATE TABLE super_ref (id INT REFERENCES super);
CREATE TABLE sub () INHERITS(super);

-- this works
INSERT INTO super VALUES(1); INSERT INTO super_ref VALUES(1);

-- clean up
DELETE FROM super_ref; DELETE FROM super;

-- this fails with: ERROR: insert or update on table "super_ref" violates
foreign key constraint "$1"
INSERT INTO sub VALUES(1); INSERT INTO super_ref VALUES(1);




---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend

Reply With Quote
  #2  
Old   
Michael Fuhr
 
Posts: n/a

Default Re: [BUGS] BUG #1307: Possible bug inheritance/referential integrity - 11-06-2004 , 08:56 AM






On Sat, Nov 06, 2004 at 12:11:49PM +0000, PostgreSQL Bugs List wrote:
Quote:
Rows inserted into a table "sub" inherited from a table
"super" do not seem to exist in the super-table from the point of
view of the foreign key constraint checker in references to the
"super"-table, even though a SELECT query displays the rows that
were inserted into sub also in super, as should be (See example
provided).
This is a known problem -- see the last paragraph in the "Inheritence"
chapter of the PostgreSQL documentation:

http://www.postgresql.org/docs/7.4/s...l-inherit.html

The doc for 8.0 (in beta) has more detail:

http://developer.postgresql.org/docs...l-inherit.html

--
Michael Fuhr
http://www.fuhr.org/~mfuhr/

---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend


Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.