Introduktion till Systemering - Högskolan i Gävle
Introduktion till Systemering - Högskolan i Gävle
Introduktion till Systemering - Högskolan i Gävle
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Per Aspenberg ©<br />
Göran Sundberg ©<br />
Kurskompendium <strong>Introduktion</strong> <strong>till</strong> <strong>Systemering</strong><br />
Ytterligare ett skäl kan vara att termerna i det ena objektet är av <strong>till</strong>fällig<br />
karaktär. Man kanske vill registrera de anställdas resultat från företagets<br />
tennisturnering. Dessa uppgifter är förmodligen att betrakta som <strong>till</strong>fälliga och<br />
bör då läggas i ett eget objekt med en 1:1 relation <strong>till</strong> objektet Anställda.<br />
1 0<br />
Anställda Tennisresultat<br />
I exemplet ovan har en notation om existensberoende lagts <strong>till</strong>. Ett tvärstreck <strong>till</strong><br />
vänster på relationslinjen betyder att det måste finnas en förekomst av anställd<br />
för ett visst resultat (ställning på tennisstegen). En ring <strong>till</strong> höger på samma linje<br />
markerar att det inte behöver finnas ett tennisresultat för varje anställd.<br />
1:M relation Detta är i särklass den vanligaste typen av relation. Relationen mellan objekten<br />
skapas i en relationsdatabas genom att primärnyckeln från objektet på ”1-sidan”<br />
läggs in som en term i objektet på ”M-sidan” (Många-sidan). Denna term kallas<br />
då för ”främmande nyckel”.<br />
1:M relationer förekommer<br />
då man kan knyta 0, 1 eller<br />
flera poster av annan typ <strong>till</strong><br />
objektet. T.ex. kan en KUND<br />
ha 0, 1 eller flera<br />
KUNDORDER. Det blir då en<br />
1:M relation mellan KUND<br />
och KUNDORDER. Däremot<br />
så kan ju varje KUNDORDER<br />
<strong>till</strong>höra endast en KUND.<br />
M:M relation Många-<strong>till</strong>-Många relationer har ofta egna egenskaper och informationsvärden.<br />
När en M:M relation ska realiseras i en relationsdatabas sker detta genom ett<br />
relationsobjekt med en egen tabell.<br />
Kännetecknande för ett relationsobjekt är att det:<br />
- ofta saknar egna nycklar och istället ”lånar” sina nycklar från omgivande<br />
objekt, m.a.o så består relationsobjektets nyckel egentligen av två nycklar som<br />
det då ”lånar” från de objekt som det knyter samman.<br />
36<br />
KUND<br />
KUND-<br />
ORDER<br />
Fig 23. Möjlig 1:1-relation<br />
Notera existensberoende !<br />
Kundnr, namn, postadress<br />
Ordernr, orderdatum, betalnvillkor, Kundnr<br />
Fig 24. Exempel på<br />
1:M-relation