relational reasoning -- why two tables and not one?

From: lawpoop <>
Date: Wed, 14 Oct 2009 13:24:59 -0700 (PDT)
Message-ID: <>

On another mailing list about a database which shall not be named, a poster asked about a single-table database structure. It was to track donations, and that thank-you letters had been sent in reply.

A couple folks ( myself included ) thought that there should be at least two tables -- 'donors' and 'donations' . But the poster argued that no, there would never be a holiday fund drive appeal sent out to all donors, or a year-end statement, or anything of that sort. So a single table would suffice.

I tried to argue the point that having 'donors' and 'donations' more accurately modeled 'reality' , and failed. Another poster, who was in fact in favor of two tables, argued against the 'modeling reality' argument, saying that theorists would it's wrong to have 'donation_dates' as a separate table, even though the relationship "in reality" is one date for many donations. If it meets the functionality specs, it's fine.

( There was talk of needing Donors as an entity later on, but there was no need for it in the specs now, so it's moot ).

I couldn't think of a good argument against it, so I must be wrong. But my gut instinct or intuition is telling me there is some understanding of relational theory or something that I am not grasping, which would prove insightful in this discussion.

Thoughts and comments? Received on Wed Oct 14 2009 - 22:24:59 CEST

Original text of this message