home IT Management ITIL Projektmanagement Prozessmanagement Organisation Über uns
Das Wissen im Zusammenhang der Datenmodellierung ist für die Praxis von grosser Bedeutung. Nach Konstruktion des konzeptionellen Datenmodells wird dieses Datenmodell in die Schreibweise eines bestimmten logischen Datenmodells überführt. Auch ein logisches Datenmodell beschreibt die Entity-Typen und ihre Beziehungen untereinander. Die Beschreibung richtet sich aber bereits an den Eigenschaften konkreter Datenbanksysteme aus.
Aufbau und Beschreibung
Das relationale Datenbankmodell verwendet zweidimensionale Tabellen (oder
alternativ eine auf der Relationenalgebra beruhende mathematisch-formale
Schreibweise) zur Darstellung des Realitätsausschnittes. Alle Gegenstände der
Diskurswelt können durch zweidimensionale Tabellen anschaulich und vollständig
beschrieben werden. Der theoretisch-mathematische Hintergrund ist sehr
anspruchsvoll und begründet die Leistungsfähigkeit des Modelles.
Beim relationalen Datenbankmodell sind einige Begriffe wichtig, die durch nachstehende Abbildung erläutert werden:

Abbildung: Beispiel für ein relationales Datenbankmodell in Tabellenform
Entity
ist ein Objekt im ERM, das im Relationenmodell als Zeile mit all seinen Eigenschaften umgesetzt wird (entspricht Tupel).
Tupel
sind die einzelnen Zeilen in der Tabelle, also die konkreten Objekte (entspricht Entity).
Entity-Typ
ist die Relation, also die gesamte Tabelle.
Attribute
sind die Spaltenüberschriften in der Tabelle. Das unterstrichene Attribut ist das Schlüsselattribut. In der Abbildung oben ist das Schlüsselattribut die Pers-Nr. Es ist nicht unterstrichen, weil ACCESS eine Unterstreichung der Schlüsselattribute in der vorgestellten Ansicht nicht vornimmt. Eigentlich ist das nur eine Kleinigkeit, sie kann dennoch verdeutlichen, dass Software aus betriebswirtschaftlicher Sicht i.P. immer verbesserungsfähig ist.
Wertebereich
ist der zulässige Variableninhalt, also die Domänen der einzelnen Attribute.
Attributwert
ist der Inhalt einer Zelle innerhalb der Tabelle.
Das komplette logische Datenbankmodell (entspricht dem konzeptionellen Schema) einer relationalen Datenbank lässt sich dann für das einleitende Beispiel vereinfacht und doch vollständig so angeben:
Mitarbeiter (Pers-Nr, AbtlNr, Name, Adresse)
Produkt (Produkt-Nr, Name)
Projekt (Proj-Nr, Projektbeschreibung)
Produziert (Pers-Nr, Produkt-Nr, Zeit Pro Stück)
Arbeitet Für (Pers-Nr, Proj-Nr, Funktion)
...
allgemein:
NameDerRelation (Schlüsselattribut, Attribut, Attribut, ...)
Die Schlüsselattribute sind unterstrichen. Die Fremdschlüssel sind kursiv gesetzt. Die kursive Notation ist nicht allgemein verbreitet, sie dient Ihnen nur zur Orientierung im Datenbankmodell.

Abbildung: Grafische Form des logischen Datenbankmodells
Vereinfacht lässt sich sagen, dass beim Relationenmodell
alle Daten in zweidimensionalen Tabellen (Relationen)
mit einer festen Anzahl von Spalten (Attributen)
und einer beliebigen Anzahl von Zeilen (Tupeln)
dargestellt werden.
Benutzung
Die Benutzung von Datenbanken, die im relationalen Datenbankmodell erstellt wurden, erfolgt mit Sprachen, die speziell für diesen Zweck entwickelt wurden. Diese Sprachen nennt man deskriptiv, da mit ihrer Hilfe beschrieben werden kann, was getan werden soll. Das erscheint Ihnen vielleicht selbstverständlich, ist es aber nicht. Die heute nach wie vor vorherrschenden Sprachen im Bereich der EDV sind prozedural, das heisst, Sie müssen genau angeben, wie etwas getan werden soll. Das ist natürlich viel umständlicher.
Die Existenz dieser deskriptiven Sprachen in Verbindung mit der darunterliegenden mathematischen Fundierung erlauben jede nur denkbare Abfrage relativ einfach zu formulieren. Im Grundstudium stellen wir Ihnen als Beispiel für eine solche Sprache SQL (structured query language) vor. SQL ist die wichtigste Sprache für das relationale Datenbankmodell.
Beispielhafte Abfrage mit SQL:
SELECT * FROM MITARBEITER WHERE ABTLNR = 11
Diese Abfrage versucht, aus der Relation (Tabelle) MITARBEITER diejenigen Tupel (Entities) herauszulesen, bei denen die Abteilungsnummer "11" ist. Dabei sollen ALLE Attribute der Relation zurückgegeben werden. Als Ergebnis resultiert:
|
Pers-Nr |
Abt-Nr |
Name |
Adresse |
|
2 |
11 |
Meier |
Dorfplatz |
|
3 |
11 |
Huber |
Im Gärtli 7 |
SQL-Abfragen können jedoch schnell komplex werden, wie das nachfolgende Beispiel Ihnen zeigt.
Ein Sachbearbeiter erhält den Auftrag, ein Organigramm der Unternehmung zu erstellen. Es soll sämtliche Mitarbeiter (Name, Adresse) mit den zugeordneten Abteilungen enthalten. Die Informationen sind in der Datenbank in verschiedenen Relationen enthalten, die daher gemeinsam ausgewertet werden müssen. Die Abfrage lautet:
SELECT DISTINCTROW
Mitarbeiter.Name, Mitarbeiter.Adresse, Abteilung.Name
FROM Abteilung
INNER JOIN Mitarbeiter ON
Abteilung.[Abt-Nr] = Mitarbeiter.AbtlNr
ORDER BY Mitarbeiter.Name;
Diverse Datenbank-Tools bieten die Möglichkeit, eine solche Abfrage auch interaktiv zusammenzustellen:

Abbildung: Auswahlabfrage Organigrammdaten, graphische Darstellung mit Access
Diese Abfrage tut nichts anderes, als für jeden Mitarbeiter die Abteilung zu ermitteln, und Mitarbeitername sortiert mit Adresse und den Abteilungsnamen auszugeben. Als Ergebnis resultiert:
|
Name |
Adresse |
Abteilung |
|
Amstutz |
Städtlistrasse 253 |
Produktion |
|
Christen |
Seestrasse 104 |
Finanz |
|
Huber |
Im Gärtli 7 |
IT |
|
Meier |
Dorfplatz |
IT |
|
Müller |
Hauptstrasse 5 |
Verkauf |
|
Zumbühl |
Gassenweg 11 |
Finanz |
Vielleicht haben Sie bemerkt, dass als Ergebnis der Abfrage bei einem relationalen Modell immer eine Relation entsteht. Diese Relation kann dann genau wie alle anderen bereits bestehenden Relationen weiter benutzt werden, etwa als Basis einer neuen Abfrage. Das relationale Datenbankmodell ist insofern geschlossen: Es entstehen immer Tabellen.
Mit SQL können Sie bei relationalen Datenbanken alles machen! Sie können:
Abfragen absetzen (SELECT),
Tabellen verbinden (JOIN) oder erzeugen (CREATE TABLE),
Werte in eine Relation einfügen (INSERT INTO) oder löschen (DELETE FROM)
...
und alle diese Operationen beliebig schachteln.
Beurteilung
Die wichtigsten Vorteile des relationalen Datenbankmodells:
keine festen Zugriffspfade
Zugriff im allgemeinen über jede Tabelle und jedes Attribut möglich
nur Schlüsselredundanz
enorme Flexibilität
Als Nachteil muss dabei erkauft werden:
hohe Anforderungen an die Hardware
sehr hoher Verwaltungsaufwand für komplexe Operationen, vor allem beim dynamischen Zusammenfügen von Tabellen
In der Praxis zum Teil horrende Antwortzeiten im ad-hoc-Betrieb
Wie überall bei der EDV stellt also auch hier eine Technologie nie die Lösung für alle Anforderungen aus betriebswirtschaftlicher Sicht dar. Es wurden daher erhebliche Anstrengungen unternommen, leistungsfähigere Datenbankmodelle zu entwickeln und als Produkte auf den Markt zu bringen.
| home | ITIL | IT Management | Prozessmanagement | Kontakt |
| ITIL Software | Projektmanagement | Organisation | Dienstleistungen |