Abteilung Gymnasium Arbeitskreis Link-Ebene Wirtschaftsinformatik Schellingstr. 155 · 80797 München · Tel.: 089 2170-2153 · Fax: -2125 E-Mail: [email protected] WIn 9.1 Assoziationsklassen und rekursive Beziehungen Assoziationsklassen Attribute, deren Wert von der konkreten Wahl zweier Objekte aus unterschiedlichen Klassen abhängen, werden im semantischen Modell der Beziehung zugeordnet, die diese Klassen miteinander verbindet. Diese Beziehungsstruktur wird sichtbar, wenn man bei einer Pizzabestellung die Bestellnummer und das Bestelldatum speichern will und die beiden Klassen KUNDE und PIZZA gegeben hat: PIZZA KUNDE Name bestellt > Bezeichnung Vorname Preis … … Da ein Kunde mehrere Pizzen bestellen und die gleiche Pizza von mehreren Kunden bestellt werden kann, handelt es sich um eine Beziehung mit m:n-Kardinalität. Sowohl das Bestelldatum, als auch die Bestellnummer hängen davon ab, welcher Kunde welche Pizza bestellt hat, also von der Kombination beider Objekte bezüglich der Beziehung „bestellt“. Damit müssen diese Attribute als Assoziationsklasse an die Beziehung angebunden werden: Bestelldatum Bestellnummer PIZZA KUNDE Bezeichnung Name Vorname … bestellt > Preis … Im logischen Modell finden sich diese Attribute als Spalten neben den Fremdschlüsseln in der Tabelle „bestellt“: KundeNr PizzaNr Bestelldatum Bestellnummer -2- Rekursive Beziehungen Haben Objekte einer Klasse untereinander eine Beziehung, so beginnt und endet diese Beziehung in derselben Klasse. Diese Beziehungen bezeichnet man als rekursiv. Beispiel: Für ein Wichtel-Spiel möchte der Klassenleiter in einer Datenbank notieren, wer innerhalb einer Schulklasse welchem Klassenkameraden ein Wichtelgeschenk geben möchte. Dabei sei zugelassen, dass der Einzelne auch mehrere Mitschülerinnen und -schüler beschenken darf: SCHULKLASSE < bewichtelt Name Vorname Geschlecht Geschenk Auch hier besteht eine m:n-Kardinalität, denn jeder darf jeden beschenken. Möchte man noch das Geschenk speichern, ergibt sich ein Attribut der Beziehung „bewichtelt“ (Assoziationsklasse). Im logischen Modell könnte die Beziehung „bewichtelt“ wie folgt umgesetzt werden: WichtelNr EmpfaengerNr Geschenk WichtelNr und EmpfaengerNr sind Fremdschlüssel aus der Klasse SCHULKLASSE und bezeichnen eindeutig einzelne Klassenkameraden.