Einführung
Daten sind nach DIN 44300, Informationen, die weiterverarbeitet werden. Unter dem Begriff Datenorganisation werden alle Verfahren zusammengefasst, die dazu dienen, Daten bzw. Datenbestände:
-> zu strukturieren, d.h. hinsichtlich ihrer Zusammenhänge zu analysieren und zu ordnen logische Datenorganisation)
-> auf peripheren Speichergeräten, insbesondere auf Platten- und Diskettenlaufwerken, zu speichern und für den Zugriff verfügbar zu halten (physische Datenorganisation oder Datenhaltung).
Datenorganisation
Ziel der Datenorganisation ist es, die Daten logisch so zu strukturieren und physisch so zu speichern, dass sie
- einen schnellen Zugriff gestatten
- leicht zu aktualisieren sind
- sich beliebig auswerten lassen
- flexibel verknüpft werden können und dass ausserdem eine wirtschaftliche Speicherauslastung, d.h.:
- weitgehende Ausnutzung der verfügbaren Speicherkapazität
- Vermeidung von Mehrfachspeicherung derselben Daten (Redundanz) erreicht wird.
Die Ziele sind teilweise gegenläufig, beispielsweise völlige Redundanzfreiheit und schneller Zugriff.
Beispiele für einzelne Ziele:
Schneller Zugriff:
Alle Platzbuchungs- und Reservierungssysteme erfordern kurze Antwortzeiten, für die ein schneller Zugriff zwingende Voraussetzung ist.
Leichte Aktualisierbarkeit:
In der Finanzbuchhaltung muss das Verändern bestehender Konten, das Löschen alter und das Eröffnen neuer Konten leicht möglich und in kurzer Zeit auszuführen sein.
Beliebige Auswertbarkeit:
Aus den Daten der Fakturierung sollen sich monatlich die Umsätze sowohl nach Kunden als auch nach Artikeln und nach Gebieten sortiert auflisten lassen.
Die Datenorganisation beruht auf den Grundbegriffen Datenelement, Datensatz und Datei. Je nach Anwendung unterscheidet man zwischen formatierten und unformatierten Daten.**
Formatierung
2.1 = Unformatierte Textdateien ohne Struktur
„Normaler Text" wir als Fliesstext gespeichert. Ein Enter erstellt eineAbsatzmarke. Der Text wird somit als Absatz abgeschlossen. Ein Zeilenumbruch findet nicht statt.
2.2 = Unformatierte Text-Dateien mit Struktur
Datenelemente können (und wurden vor allem beim Beginn der Datenverarbeitung) in Textdateien gespeichert werden. Die Daten sind nicht formatiert und nur leicht strukturiert. Das heisst, die Datenelemente sind nur voneinander getrennt. Bei dieser Speicherart unterscheiden wir zwischen zwei Möglichkeiten:
- Die Datenelemente werden durch Trennzeichen getrennt
- Jedem Datenelement wird eine feste Länge zugewiesen

2.3 Formatierter Text
Text kann mit verschiedenen Formaten (Zeichen-,Absatzformatierungen) ausgestattet sein. Das Dateiformat RTF (Rich Text Format} wurde von Microsoft speziell für den Datenexport entwickelt. Dieses Datenformat wir von beinahe allen Textverarbeitungs- und von vielen Officeprogrammen unterstützt. Bei diesem Austausch gehen die Formatierungen nicht verloren.

2.4 Doc -ein Textverarbeitungsformat
Moderne Textverarbeitungsprogramme (wie MS WinWord mit dem Dateiformat .doc) speichern neben dem Text und seinen Formatierung eine Vielzahl an weiteren Objekten wie Tabellen, Diagramme, Grafiken, Bilder, Kommentare, OLE-Objekte, Ton und Bilder.
Informationselemente können verschieden strukturiert dargestellt werden. Die Programme werden im Laufe der Zeit angepasst und verändert. Sie gelangen als neue Versionen auf den Mark und verwenden unter Umständen abgeänderte Formate. Unter Ab- und Aufwärts- kompatibilität versteht man, ob ein Programm Dateien einer niedrigen oder höheren Version lesen kann.

2.5 Austauschbarkeit von Daten
Die Datenformate txt und rtf stellen den tiefsten gemeinsamen Formatstandard dar, mit welchen die meisten Programme Daten austauschen können. Da Internet baut auf diesen Aspekt ebenfalls auf, verwendet jedoch das HTML-Format, welches nichts anderes als eine Textprogrammiersprache ist. Die Programmierung können Sie somit in einem text Editor oder WordPad als auch WinWord erstellen.
2.6 Datenstrukturen im Überblick

Grundbegriffe der Datenorganisation
Die logische Datenorganisation befasst sich mit Datenobjekten, die durch ihre Eigenschaften (Attribute, andere Bezeichnung: Merkmale) beschrieben werden. Sie basiert auf den hierarchisch aufgebauten Begriffen:
- Datenelement
- logischer Datensatz
- Datei
- Datenbank
Das Datenelement (item) ist die kleinste logische Dateneinheit, die nicht weiter zerlegt wird. Der Platz zur physischen Speicherung eines Datenelements wird als Datenfeld (Ursprung: Lochkarteneinteilung) bezeichnet. Die Begriffe Datenelement und Datenfeld werden oft synonym verwendet. Logisch besteht ein Datenelement aus einem oder mehreren Zeichen (characters), physisch wird das entsprechende Feld durch ein oder mehrere Byte bzw. Worte dargestellt.
Der logische Datensatz (record) beschreibt ein Datenobjekt durch die Zusammenfassung logisch zusammengehöriger Datenelemente. Betriebliche Daten sind in der Regel formatierte Daten. Darunter versteht man Daten in Form von Datensätzen, die
- eine feste Feldeinteilung besitzen
- über einen Ordnungsbegriff bzw. eine Nummer zu identifizieren sind
Die einzelnen Datenelemente (=Datensätze) bilden die Attribute, welche die Eigenschaften des Objekts beschreiben. Unter der Länge eines Datensatzes versteht man die Anzahl der in ihm enthaltenen Byte bzw. Worte. Weitere Beispiele für formatierte Daten bilden die gebräuchlichen Datensätze für Kunden, Lieferanten, Artikel oder Mitarbeiter.

Ein Datensatz wird über einen Ordnungsbegriff eindeutig identifiziert.
Eine Datei (file) entsteht durch die Zusammenfassung gleichartiger, logisch zusammengehöriger Datensätze. Bei betriebswirtschaftlichen Anwendungen besitzen alle Datensätze einer Datei üblicherweise einen einheitlichen Ordnungsbegriff (Primärschlüssel). Typische Beispiele sind:
- Artikeldateien (Ordnungsbegriff - Artikelnummer)
- Kundendateien (Ordnungsbegriff - Kundennummer)
- Personaldateien (Ordnungsbegriff - Personalnummer)
Anstelle des Begriffes Datei wird bei relationalen Datenbanken häufig der Begriff Tabelle verwendet. Die Tabellen können physisch in einer einzigen Datei gespeichert sein (z.B. Access).
Häufig werden innerhalb eines Datensatzes mehrere logisch zusammengehörige Datenelemente (hier Attribute gemeint) zu einem Datensegment (Datengruppe) zusammengefasst. Beispielsweise könnten in einem Datensatz der Kreditorenbuchhaltung die Datenelemente (Attribute) “Strasse/Hausnummer’“ zusammen das Datensegment “Anschrift des Lieferanten” bilden.
Beim Arbeiten mit Dateien (Datensätze) unterscheidet man die folgenden Dateioperationen:
- Ändern Mutieren
- Einfügen Insert
- Entfemen Delete
Das Gegenteil zu formatierten Daten sind unformatierte Daten (andere Bezeichnungen: nicht formatierte oder formatfreie Daten), für die keine bestimmte Anordnung bzw. Struktur vorgeschrieben ist. Unformatierte Daten treten, wie schon erwähnt, bei der Speicherung von Texten, Dokumenten jeder Art auf. Hier bemerken Sie einen Konflikt was genau unter einem Format zu verstehen ist. Für den Anwender ist die Zeichenformatierung (z.B. fett) eine Formatierung. Für den „reinrassigen” Informatiker ist dies keine Formatierung, sondern eine Auszeichnung, Prägung, Eigenschaft oder Attribut des Objektes Zeichen! Für ihn steht Formatierung nur im Zusammenhang mit der Strukturierung von Informationen und Daten. Viele Operationen wie filtern und berechnen lassen sich nur mit strukturierten Daten ausführen!
Anwenden der Datenorganisation
4.1 Flat - Table (flache Tabelle)
Exceldatenlisten oder allgemein Tabellenkalkulationsdatenlisten sowie schlecht betreute oder modellierte Datenbanken sind sogenannte flache Tabelle. Es ist nur eine einzige Tabelle vorhanden in der sämtliche Datenelemente gespeichert sind. Beziehungen zu anderen Tabellen sind keine vorhanden.
Für einfache Fälle reicht dies völlig aus. Eine „Fiat Table", zu deutsch eine „flache Tabelle", bezeichnet man eine Datenbank, die nur aus einer einzigen Tabelle besteht. Eine Zeile stellt ein Datensatz (engl. Record) dar.
Solange es sich nicht um viele Datensätze handelt, ist diese Speicherung der Daten auch unproblematisch. Im Wandel der Zeit wachsen diese Tabellen, es existieren immer mehr Datensätze. Es werden auch immer mehr verschiedene Informationen gesammelt. Sind die Zusammenhänge zwischen den Daten komplexer, so neigen diese Tabellen sehr rasch zur Unübersichtlichkeit und neigen nach einer gewissen Nutzungsdauer untauglich zu werden. Sie genügen dem Kriterium der zeitlichen Permanenz nicht mehr!
Zeitliche Permanenz bedeutet, dass die Daten über einen längeren Zeitraum nutzbar sind.
| MNR | Name | Vorname | Abt. Name | Proj-NR | Proj-Name | Proj-Zeit |
|---|---|---|---|---|---|---|
| 101 | Müller | Petra | Modelierung | 15,18 | DB,Banking | 30,180 |
| 102 | Huber | Walter | Entwicklung | 21,16 | Web, DB2 | 50,210 |
| 103 | Meier | Peter | Modelierung | 18 | Banking | 60 |
| 104 | Bader | Hans | Programm | 10,18 | AA-01,Banking | 80,45 |
Die Eingaben der Daten sind sehr mühsam und Fehler unvermeidbar. Die Daten sind nicht immer korrekt.
Datenintegrität bedeutet, dass die Daten korrekt sind. Die Daten sollten gegen falsche Ein gaben, unerlaubtes Benutzen und Verlust geschützt sein. Eine Eingabekontrolle soll durch das Datenbanksystem erfolgen.
Ein Versuch, die Projekte in mehreren Spalten zu führen wird deshalb scheitern, weil wir nicht wissen, in wie vielen Projekten ein Mitarbeiter maximal mitwirken wird. Wir müssen jedoch dafür sorgen, dass die einzelnen Felder nur einen Eintrag haben (elementar oder atomar sind). Wir müssen den Datensatz 101 in mehrere Zeilen aufteilen.
| MNR | Name | Vorname | Abt. Name | Proj-NR | Proj-Name | Proj-Zeit |
|---|---|---|---|---|---|---|
| 101 | Müller | Petra | Modelierung | 15 | DB | 30 |
| 101 | Müller | Petra | Modelierung | 18 | Banking | 180 |
| 102 | Huber | Walter | Entwicklung | 10 | AA-10 | 50 |
| 102 | Huber | Walter | Entwicklung | 16 | DB2 | 210 |
| 103 | Meier | Peter | Modelierung | 18 | Banking | 60 |
| 104 | Bader | Hans | Programm | 18 | Banking | 45 |
| 104 | Bader | Hans | Programm | 10 | AA-01 | 80 |
In einer Relation werden die Daten in Tabellenformat gespeichert. Die Spalten definieren das Datenbankfeld (Feldtyp, Grosse, Namen) und werden somit auch Datenfeld oder Eigenschaften, bzw. Attribute genannt. Der Feldwert wird somit auch als Attributswert bezeichnet. Eine Zeile mit zusammengehörigen Datenfelder wird als Datensatz (Record) bezeichnet.
Beachten Sie jedoch, dass „Müller Petra" beispielsweise mehrmals vorkommt. Wiederholungen von Datenelementen bezeichnet man als Redundanzen.
Wenn Daten mehrmals eingetragen sind, spricht man von Redundanz.
4.2 Dateninkonsistenz
Nehmen wir an, Müller Petra heiratet. Sie wird nun Meier heissen. Wir müssen dadurch alle Datensätze ändern, bzw. mutieren. Die Gefahr ist gross, dass wir nicht alle Datensätze mutieren. Es kommt zu Datenwidersprüchen bzw. Dateninkonsistenzen.
4.2.1 Anomalien
Da gleiche Datenelemente mehrfach existieren ist die Mutierung nicht gewährleistet. Man spricht von einem:
Mutations- oder Update Problem
Nehmen wir an, Herr Huber verlässt die Firma. Er ist der einzige, welcher das Projekt 21, Web betreut. Das Projekt soll jedoch weiterhin bestehen bleiben. Eine Neuzuteilung des Projektes ist erst in der nächsten Sitzung in zwei Monaten geplant. Darf Herr Huber die Firma verlassen = Datensatz löschen? Nein, sonst würden sämtliche Daten des Projektes 21 verloren gehen. Wir haben somit ein:
Delete Problem
Sie haben schon lange um ein neues Projekt gekämpft. Es ist nun beschlossene Sache, die Zuweisung an einen Mitarbeiter erfolgt erst an einer nächsten Sitzung. Dürfen oder können Sie das Projekt bereits erfassen? Nein, Sie haben somit ein:
Insert Problem
Um die zuvor geschilderten Unzulänglichkeiten zu beheben, wird die Tabelle in mehrere Tabellen zerlegt.
Tabelle (Relation) Mitarbeiter
| MNR | Name | Vorname | Abt. Name |
|---|---|---|---|
| 101 | Müller | Petra | Modelierung |
| 102 | Huber | Walter | Entwicklung |
| 103 | Meier | Peter | Modelierung |
| 104 | Bader | Hans | Programm |
Tabelle Mitarbeiter-Projekt
| MNR | Proj-NR | Proj-Zeit |
|---|---|---|
| 101 | 15 | 30 |
| 101 | 18 | 180 |
| 102 | 10 | 50 |
| 102 | 15 | 210 |
| 103 | 18 | 60 |
| 104 | 18 | 45 |
| 104 | 10 | 80 |
Tabelle Projekt
| Proj-NR | Proj-Name |
|---|---|
| 10 | AA-10 |
| 15 | DB |
| 18 | Banking |
Primärschlüssel, Kombischlüssel und Fremdschlüssel und deren Beziehungen untereinander.
5.1 Primärschlüssel
Damit ein Datensatz eindeutig auffindbar ist, sucht man nach einem Attribut, welches den Datensatz eindeutig identifiziert. Ein solches Attribut bezeichnet man als Primärschlüssel oder Identifikationsschlüssel.
5.3.1 Kriterien für einen Primärschlüssel
- Er muss eindeutig sein
- Er darf nicht zu kompliziert sein
- Er darf in absehbarer Zeit nicht veränderbar sein
5.4 Kombischlüssel
Ein Kombischlüssel besteht aus 2 Primärschlüssel(=Fremdschlüssel) von anderen Tabellen, welche nur zusammen eine eindeutige Identifikation eines Datensatzes erlauben.
5.5 Fremdschlüssel
Ein Fremdschlüssel ist ein Attribut, welches in einer anderen Tabelle (Relation) Primärschlüssel ist.
5.6 Beziehungen
An dieser Stelle wollen wir etwas ausschweifen und uns die Beziehungen zwischen einzelnen Informationen genauer ansehen. Es geht hier darum, Sie für die verschiedenen Beziehungstypen und –arten sensibel zu machen. Dass es grundverschiedene Arten von Beziehungen gibt, soll anhand einiger Beispiele verdeutlicht werden:

5.7.1 Beziehungstypen
Wie bereits in den obigen Beispielen gezeigt wurde, gibt es verschiedene Arten, in der Informationen zusammenhängen können. Folgenden grundlegenden Typen werden hier definiert:
- Verknüpfung von Information: Beziehungen, die verschiedene Informationen miteinander verknüpfen
- Aggregatein: Beziehungen der form Obermenge – Teilmenge
- Selbstbezogen (Rekursiv): Beziehungen von Informationen auf sich selber
Diese drei Grundtypen lassen sich noch feiner unterteilen. Doch zuerst soll jeder dieser Beziehungstypen besprochen werden.

5.7.2 Beziehungen unter der Lupe
Beziehungen können nicht nur nach ihrem Typ untersucht werden. Für die Typen „verknüpfende Beziehungen“ und „Rekursive Beziehungen“ ist es nochinteressant zu untersuchen, wie viele Informationen auf beiden Seiten einer solchen Beziehung beteiligt sind. Dieses Problem wird auch oft unter dem Stichwort Kardinalität behandelt.
Gleich zum Einstieg wieder ein paar Beispiele:

Diese Beispiele sollen nur zeigen, dass grundsätzlich verschiedene Kardinalitäten möglich sind. Die üblichen Symbole sind:
- 1= genau eins
- C= 0/1
- m= mindestens 1
- mc= beliebig
5.8 Stammdaten / Bewegungsdaten
Stammdaten sind Daten, die sich wenig bewegen. Die Tabelle Kunden und Lieferanten enthalten Stammdaten. Die Tabellen “Auftrag” und “Bestellzeile” sind Bewegungsdaten. Diese sind sehr häufig und müssen von Zeit zu Zeit archiviert werden. Nur wenige User dürfen Stammdaten erfassen und mutieren.
Konzeptionelles Datenmodell
Kardinalitäten. An dieser Stelle soll aber nur auf diese drei näher eingegangen werden.
6.1 Datenstrukturdiagramm, DSD Das Datenstrukturdiagramm ist aus dreizeiligen Tabellen erstellt, wobei man die Beziehungen darstellt.

Ein DSD wird in 4 Teilschritten erstellt:
- Alle Tabellennamen eintragen
- Alle Primärschlüssel eintragen
- Alle Fremdschlüssel eintragen
- Beziehungen einzeichnen und würdigen
6.2 Notationen
Wir verwenden folgende Notationen

6.3 Relationenschreibweise

6.4 ERM bzw. ERD
ERM steht für Entitäten - Relationen - Modell (Entity - Relationship - Model), ERD für Entitäten – Relationen – Diagram.
Eine Entität ist ein Objekttyp (Kunde, Lieferant). Die Menge aller Kunde beispielsweise ist die Entitätsmenge der Entität “Kunde”. Entitäten werden in Rechtecken, Attribute in Ovale dargestellt.

Erstellen des DSD
7.1 Allgemeines
Beim Erstellen eines DSD, Datenstrukturdiagramm, gehen Sie nach folgenden Schritten vor:
• Bestimmen Sie in jeder Relation (Tabelle) die Primär- und Fremdschlüssel.
• Für jede Relation (Tabelle) zeichnen Sie einen Kasten mit drei Zeilen und tragen Sie den Relationsnamen (R-Name), den Primärschlüssel (P-Key) und die Fremdschlüssel (F-Key) ein.
• Verbinden Sie Primär- und Fremdschlüssel nach der Faustregel:
P-Key <- —— -> -> F-Key
Die Mengenschreibweise
8.1 Allgemeines
Bevor ein Datenmodell in einer Datenbank implementiert wird, empfiehlt es sich das Modell in der Mengenschreibweise (relationale Schreibweise) festzuhalten. Der Vorteil dieser Vorgehensweise ist, dass das Model sehr schnell in der Datenbank implementiert werden kann. Die Mengenschreibweise wird für die Tabellendefinitionen herbeigezogen. Das Erstellen der Tabelle ist quasi nur noch ein Übertragen der Mengenschreibweise in die Entwurfsansicht der Tabelle, ein Abschreiben.
Muster:
Lieferanten(Lief_NR, Lief_Name)
Physikalisches Datenmodell
Das Physikalische Modell ist jenes Modell, welches in das jeweilige Programm implementiert wird.
9.1 Felddatentypen
Die Datenintegrität wird im Wesentlichen beeinflusst mit der Wahl des Felddatentyps und dessen Eigenschaften.
| Felddatentyp | Max. Grösse | Beispiel/Eigenschaft |
|---|---|---|
| Text | 255 Zeichen | kann nicht berechnet werden |
| Memo | 65535 Zeichen | Notizen |
| Zahl | 1,2,4,8 Byte | Ganz oder Dez. |
| Byte | 0 bis 255 | 1 Byte |
| Int | -32.768 bis 32.768 | 2 Byte |
| Single | 4 Byte (7 Dez. stellen) | |
| Double | 8 Byte (15 Dez. stellen) | |
| Dezimal | 12 Byte (28 Dez. stellen) | |
| Datum/Uhrzeit | 8 Byte | |
| Währung | 8 Byte | |
| AutoWert | 4 Byte | einmal/Tabelle |
| True/False | 1 Bit | Boolsche |
| OLE-Objekt | 1 GB | Objekt-linking-and-embedding |
9.2 Feldeigenschaften : Mit den Feldeigenschaften kann die Datenintegrität beeinflusst werden. Hierfür sind folgende Eigenschaften von Interesse
- Eingabeformat
- Gültigkeitsüberprüfung
- Eingabezwang