a neophytish normalization question
- From: justaguy <your.master@xxxxxxxxx>
- Date: Thu, 30 Oct 2008 18:36:04 -0700 (PDT)
Hi all,
I am designing a database for a social science project I'm doing. It
is based on a Linnaen taxonomy (family, subfamily, etc). I know to
get it up to 3rd normal form, I will have to have separate tables for
each level in the hierarchy, with UIDs in each:
tblFamily
UID Name
1 Fam1
2 Fam2
tblSubfamily
UID Name DominatedBy
1 SubFam1 FamUID_1
2 SubFam2 FamUID_1
3 SubFam3 FamUID_2
tblBranch
UID Name DominatedBy
1 Branch1 SubFamUID_3
.... and so on.
As I understand things (having never taken a formal database design
course), I can keep it in 3rd normal form by moving down the levels
and only keeping the DominatedBy field on an "immediate ancestor"/
nontransitive basis. And there is actually not all that much other
attribute data until I get to the bottom level.
My problem is that as I move down through the levels, the
classifications become more and more controversial, as they are wont
to do. And while I am going to assign things on the bottom a certain
way, I am also going to release this database to others for them to
change as they see fit. So, in a way, I need to build in a 4th form
capacity, because things on the bottom may have a many-to-many
relationship by the time somebody else gets done with it.
So my question is, how do I build in the 4th form? I think I do it by
doing this:
tblBranch
UID Name DominatedBySubFam DominatedByFam
1 Branch1 SubFamUID_3 FamUID_2
I hope I am not mucking up my explanation of the problem. Any advice
is sincerely appreciated.
Guy
.
- Prev by Date: Re: Use IDs or strings?
- Previous by thread: Use IDs or strings?
- Index(es):
Relevant Pages
|