Guten Tag Herr Scott,

Montag, 25. Juni 2001, 11:21:42, schrieben sie:

JS> Hi again, another conundrum.

JS> What is the best way to deal with the following situation?

JS> You have a group of common properties including a property that indicates a 
JS> second group of common properties.  For example,
JS> suppose you have this table:

JS> Officers
JS> ------------
JS> Name
JS> Rank
JS> Age
JS> Height
JS> Weight
JS> Species

JS> The 'Species' property may have the following values: Vulcan, Human, 
JS> Klingon, or Android.

JS> If (Species==Vulcan) then you want to store these additional properties: 
JS> MindmeldCount and YearsOnVulcan
JS> If (Species==Klingon) then you want to store these additional properties: 
JS> NumberofConcealedWeapons and RidgesOnForehead
JS> If (Species==Android) then you want to store these additional properties: 
JS> PositronicBrain and MemoryJigas
JS> If (Species==Human) then you want to store these additional properties: 
JS> AttendedStarfleetAcademy and BloodType

JS> The problems I want to avoid are:
JS>         1) placing all the properties for all species in the Officers table (as 
JS> this would include unnecessary properties for each row) and
JS>         2) storing the properties in the Officers in four seperate tables 
JS> (Klingons, Humans, Androids, and Vulcans) redundantly.

 depends on what kind of DB you would like to use...
 on normal SQL-DBs you have to use something like Bill describes, on
 PostgreSQL you can use some feature like childs... says you make a
 officers-table with common values and then you make childs like
 klingon-officers, which "extends" officers. This means, that you all
 officers are automaticly stored in officers and the extra attributes
 are stored in the child-table.

 A third way is to use LDAP, there you can make an objectclass
 "officer" and a objectclass "klingon-officer" with the special
 attributes.

Mit freundlichen Grüssen

Felix Meulenkamp 

---------------------------------------------------
KDT Klaus Daten- und Telekommunikationstechnik GmbH
Ein  Unternehmen  der  Ision  Internet AG,  Hamburg
Robertstrasse 6    *     D-42107 Wuppertal, Germany
tel +49 202 495-362        mailto:[EMAIL PROTECTED]
fax +49 202 495-399               http://www.kdt.de



-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to