Three tables hold
the data in this simple database. A 'real' commercial database
may have thousands of tables, and the FK/PK relationships may be quite
Here, the 'main table' is Donations.
It has the name & address of each donor, plus the amount of each
The organization wants to be able to
report Donations a few different ways: by zip code, by
Volunteer, by Region, by Date. One way of handling
requirements like these is to provide 'code tables', like Regions and
Volunteers are here, to hold data about regions and
They also want the option of reporting
summary data, or details. Summaries are 'sub totals' only, where
the detailed report includes Regions', Volunteers', and Donors'
names & addresses along with the amount of the donation.
'The programmer' can provide links on a webpage so that a user of the
organization's website can run a program that makes the report.
Donations ending with '95 cents' are
part of a special promotion and these members receive a tee-shirt
along with the receipt for their donation. This special report
can be handled by a programmer easily.