[thelist] DB Design question

Ken Schaefer ken at adOpenStatic.com
Mon Sep 15 09:29:01 CDT 2003


Unless there is a good reason not to, I would choose option 1.

Reason: status is an attribute of the entity "breed"

Google for an "entity-relationship" (ER) tutorial. Basically, your entities
end up being tables, and their attributes end up being fields in the table.

For large OLTP or OLAP systems you may need to break these rules if you have
certain business rules that require frequent queries of a certain type that
are just too expensive to run in a fully normalised database. This doesn't
look like one of those situations.

Cheers
Ken

----- Original Message ----- 
From: "Bob Haroche" <spambait at onpointsolutions.com>
To: "Evolt" <thelist at lists.evolt.org>
Sent: Tuesday, September 16, 2003 12:23 AM
Subject: [thelist] DB Design question


: I'm building an animal shelter web application which will will allow
: an administrator to add animals to a database, including breed info. I
: have a table called AnimalBreeds as so:
:
: BreedID    BreedName
: 1               Golden Retriever
: 2               Yorkshire Terrier
: 3               Malumute
:
:
: Next I've created a form which provides the interface to allow the
: administrator to make any number of the possible breeds to be active
: or inactive. Active means the breed is available for use when a new
: animal is added. Inactive means that breed is not a choice. So, for
: instance, if the shelter never receives Malumutes, that can be removed
: from the active list of breeds to select from. The form consists of
: two select boxes and buttons which allow which the user to move the
: breed options btwn active/inactive status, as so:
:
: Active Breeds (select box)             Inactive Breeds (select box)
: Golden Retriever                  >       Malamute
: Yorkshire Terrier                   <
:
:
: Question: Assuming there will be a master of list of hundreds of
: ptotential breeds (all inactive at the start) from which the admin
: will make a few score active for regular use, what's a good way of
: designing the (Access) database holding this information.
:
: 1. Adding an active/inactive column to the existing AnimalBreeds
: table?
: 2. Creating an InactiveAnimalBreeds table and moving the records back
: and forth between the two?
: 3. Something else?
:
: Thanks in advance.



More information about the thelist mailing list