Hierarische Datenbanken

IMS

(Information Management System)

 

Bei einer hierarischen Datenbank handelt es sich um eine Datenstruktur, die hierarisch angeordnet wird und somit von oben nach unten aufgebaut und gelesen wird. Ein Lesen von unten nach oben ist nicht ohne Schwierigkeiten oder Erweiterungen möglich.

Es gibt ein Wurzelelement, von dem aus alle anderen nach unten aufgebaut werden. Jedes einzelne Element hat immer nur einen Parent, kann aber mehrere Childs haben.

Der Vorteil liegt darin, das bei vorhandenem Parent, der Child sehr leicht sequentiell bestimmt werden kann. Eine Suche von einem Chil zum Parent ist wie oben erwähnt nicht so leicht!

Dieses Datenmodell ist wie die Anderen auch mit Integritätsbedingungen versehen, denn eine Beziehung von oben nach unten „KANN“ sein, aber eine Beziehung von unten nach oben „MUSS“ sein!

 

Eine Aufgabe soll einen kleinen Einblick geben!

 

Aufgabe:

 

Für die interne Verwaltung einer Firma soll ein hierarisches DBS herangezogen werden.

Folgende Forderungen soll es erfüllen!

 

1.      Zu einer Abteilung sollen alle Mitarbeiter und alle Ausrüstungsgegenständen der Abteilung (z.B. IBM-PC) erfasst werden.

2.      Zu jedem Mitarbeiter werden alle seine (für die Firma relevanten) Fähigkeiten (z.B. Sprachkenntnisse) festgehalten.

3.      Für die Lohn- und Gehaltszahlungen (insbesondere Kindergeld) müssen zu jedem Angestellten die Namen und das Geburtsjahr seiner Kinder aufgenommen werden.

 

a.       Geben Sie ein IMS-Schema an, das diese Forderungen erfüllt.

b.      Geben Sie ein Beispiel an, auf der Exemplarebene für Ihr Schema aus a. mit jeweils mindestens zwei Exemplaren je Segmenttyp. Die (in der IMS-Reihenfolge) erste der Angestellten in der Abteilung „EDV“ soll Elfriede Müller heissen.

c.       Geben Sie eine DL/I ähnliche Sequenz an, um alle Kinder und alle Fähigkeiten der Frau Steinfrau ermitteln zu können.

d.      Auf welchem Segment hat man positioniert, mit der DL/I ähnlichen Sequenz:

GU      (Abteilung        Name=“EDV

             Angestellter     Name=“Elfriede Müller“)

GN

GN

GN

 

Lösung

 

zu a)

 

zu b)

 

 

 

 

 

 

zu c)

               Abteilung Sek = 01

               Frau Steinfrau = 4711

 

 

   GU      (Abteilung(AbteilungNr = 01)          Þ        Setzt den Pointer auf die Abteilung Sek

                Mitarbeiter(MitNr = 4711))            Þ        Setzt auf Frau Steinfrau

               @GNP Fähigkeiten                          Þ        Sucht Fähigkeiten der Frau Steinfrau

               @GNP Kinder                                   Þ        Sucht Kinder der Frau Steinfrau

 

 


Dieses Symbol soll eine Schleife darstellen, d.h. das hier der Befehl solange wiederholt wird, bis alle Fähigkeiten und

später auch alle Kinder des Mitarbeiters ausgelesen sind!

zu d)

  

1)                       man steht auf der Abteilung EDVnun steht man auf der Angestellten Elfriede Müller

2)                       nun springt man sequentiell weiter mit den üblichen Regeln (Vater dann Sohn dann Bruder) und kommt somit zu den

ersten Fähigkeiten von Frau Müller

3)                       Da Frau Müller zwei Fähigkeiten hat, springt man nun von der Ersten zur Zweiten

4)                       Nun hat Frau Müller keine Fähigkeiten mehr und man springt sequentiell auf das erste Kind von Frau Müller!