From: Wolfgang Keller <feliphil@gmx.net>
To: pgsql-sql@postgresql.org
Subject: Re: Correct implementation of 1:n relationship with n>0?
Date: Tue, 14 May 2013 20:33:26 +0200
Message-ID: <20130514203326.5b7d2b667c67f60a6708ade2@gmx.net> (raw)
In-Reply-To: <5661746.f8cZtjsOM5@smadev.internal.net>
References: <20130430163905.77d43412c0176c3d9ebd8d90@gmx.net>
<3724312.iEkiItIUeG@smadev.internal.net>
<20130430202542.a68c8042be92943866afa16c@gmx.net>
<5661746.f8cZtjsOM5@smadev.internal.net>
List-Unsubscribe: <mailto:majordomo@postgresql.org?body=unsub%20pgsql-sql>
> > The point is that I would have expected that problem to be solved
> > within the past four decades since relational databases have been
> > invented. Or at least in the past two decades since PostgreSQL has
> > been developed.
>
> Then what about n>1, n>2, n>k where k an arbitrarily large positive
> integer? isn't it the same problem class actually?
Not quite.
In conceptual modeling, relationships between entities aren't directed.
And there's no reason to not have a "not null" constraint on any of the
two sides of a one-to-many (or many-to-many) relationship from the
conceptual point of view.
The way relationships are implemented in physical database schemas, by
foreign key constraints, just makes it non-trivial to implement such a
"not null" constraint on the "wrong" end of a one-to-many relationship.
But this a technical issue with the implementation of databases at the
physical level, not a conceptual issue.
> Is there any serious database vendor who provides out of the box
> support for 1:n, n>0 ? Or is it an "unusual" user requirement in the
> first place.
It definitely is not, since conceptual diagrams I have seen are full of
such relationships. They're just never correctly implemented at the
physical level.
> Ever thought why not so many people have asked for this?
Having quite some professional experience in companies, I don't doubt
for a second that the very only reason is simply total absence of care
for scientific correctness of database at the level of the physical
implementation.
Sincerely,
Wolfgang
--
Sent via pgsql-sql mailing list (pgsql-sql@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-sql
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: feliphil@gmx.net
Subject: Re: Correct implementation of 1:n relationship with n>0?
In-Reply-To: <20130514203326.5b7d2b667c67f60a6708ade2@gmx.net>
* 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