From: Sebastian Ritter <ritter.sebastian@gmail.com>
To: Andrew Sullivan <ajs@crankycanuck.ca>
Cc: pgsql-sql@postgresql.org
Subject: Re: Database normalization
Date: Tue, 28 Aug 2007 15:37:22 +0100
Message-ID: <99b656cb0708280737l3d50585fifcfef7103b26059b@mail.gmail.com> (raw)
In-Reply-To: <20070828132604.GB461@phlogiston.dyndns.org>
References: <99b656cb0708210709j5182b73cna63a2d275efa0e84@mail.gmail.com>
<99b656cb0708280447x4eb7c45axec01c8d0ebc6c82d@mail.gmail.com>
<20070828132604.GB461@phlogiston.dyndns.org>
Thanks for the information.
Both tables would be exactly sames apart from the foreign key relation to
clients or services. I agree that it seems strange to have one column that
is always null. Im using Django as my Object relational Mapper so im pretty
sure I can not add a constraint such as : CHECK constraint where !(col1
IS NULL and col2 IS NULL).
Another factor ive been considering is that one of the fields in this
table(s) definition(s) is free flowing text which could potentially become
very large. Should I take this in to
consideration when deciding whether to split the tables? In terms of
searching speed that is.
Kindest regards.
Sebastian
On 8/28/07, Andrew Sullivan <ajs@crankycanuck.ca> wrote:
>
> On Tue, Aug 28, 2007 at 12:47:45PM +0100, Sebastian Ritter wrote:
> > > The update/message format is exactly the same for both. Should I make
> two
> > > different tables:
>
> > > one table with extra columns : is_client, client_id, service_id,
> where
> > > either client_id or service_id would be null depending on the
> is_client
> > > boolean?
>
> Is the rest of the data the same? If so, then one table is right.
> If not, then more than one table. In either case, I really hate the
> idea of two columns, one of which is always null. But if you're
> going to do that, make sure you add a CHECK constraint where !(col1
> IS NULL and col2 IS NULL).
>
> A
>
> --
> Andrew Sullivan | ajs@crankycanuck.ca
> I remember when computers were frustrating because they *did* exactly what
> you told them to. That actually seems sort of quaint now.
> --J.D. Baldwin
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/docs/faq
>
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: ritter.sebastian@gmail.com, ajs@crankycanuck.ca
Subject: Re: Database normalization
In-Reply-To: <99b656cb0708280737l3d50585fifcfef7103b26059b@mail.gmail.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