Ik ben bezig met het ontwerpen van een database.
Nu vroeg ik mij af op welke manier ik het volgende moet realiseren:
ik heb een personen en een kwaliteiten tabel.
De persoon-tabel bevat specifieke gegevens over de man/vrouw.
De kwaliteiten-tabel bevat alle kwaliteiten die een persoon kan hebben per afdeling.
Dan hebben we nog een tabel. De PersoonKwaliteiten-tabel, deze hebben we nodig om een meer op meer relatie te leggen tussen de Persoon en de Kwaliteiten tabel. Aangezien een persoon meerdere kwaliteiten binnen een afdeling heeft, en een kwaliteit tot meerdere personen kan toebehoren.
In de "PersoonKwaliteiten"-tabel zouden de PersoonID,KwaliteitID eigenlijk een samengestelde sleutel moeten zijn.
Is het dan mogelijk om een samengestelde sleutel van ForeignKeys te hebben, en deze te laten verwijzen naar verschillende tabellen?
Dus:
maar, dit is dus niet juist..
Moet ik dan van PersoonID,KwaliteitID een PK maken? En hoe kan ik deze dan laten verwijzen naar de andere PK's?
Of moet ik een aparte PK bijmaken in de PersoonKwaliteiten-tabel?
Nu vroeg ik mij af op welke manier ik het volgende moet realiseren:
ik heb een personen en een kwaliteiten tabel.
De persoon-tabel bevat specifieke gegevens over de man/vrouw.
De kwaliteiten-tabel bevat alle kwaliteiten die een persoon kan hebben per afdeling.
Dan hebben we nog een tabel. De PersoonKwaliteiten-tabel, deze hebben we nodig om een meer op meer relatie te leggen tussen de Persoon en de Kwaliteiten tabel. Aangezien een persoon meerdere kwaliteiten binnen een afdeling heeft, en een kwaliteit tot meerdere personen kan toebehoren.
code:
1
2
3
4
5
6
7
8
| Tabel Persoon: Tabel PersoonKwaliteiten: Tabel Kwaliteiten:
# PersoonID PersoonID # KwaliteitID
° Naam KwaliteitID ° Kwaliteitnaam
° Adres Score
° Stad
relaties:
"Persoon" ------< "PersoonKwaliteiten" >------ "Kwaliteiten" |
In de "PersoonKwaliteiten"-tabel zouden de PersoonID,KwaliteitID eigenlijk een samengestelde sleutel moeten zijn.
Is het dan mogelijk om een samengestelde sleutel van ForeignKeys te hebben, en deze te laten verwijzen naar verschillende tabellen?
Dus:
code:
1
2
| CONSTRAINT PeKw_PersIDKwID_FK FOREIGN KEY(PersoonID,KwaliteitID)
REFERENCES (Persoon(PersoonID),Kwaliteiten(KwaliteitID))) |
maar, dit is dus niet juist..
Moet ik dan van PersoonID,KwaliteitID een PK maken? En hoe kan ik deze dan laten verwijzen naar de andere PK's?
Of moet ik een aparte PK bijmaken in de PersoonKwaliteiten-tabel?
[ Voor 24% gewijzigd door -FoX- op 26-02-2003 18:11 . Reden: layout ]