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]