Entwurf und Verarbeitung relationaler Datenbanken - Nikolai Preiß

Entwurf und Verarbeitung relationaler Datenbanken

eine durchgängige und praxisorientierte Vorgehensweise

(Autor)

Buch | Hardcover
XIII, 195 Seiten
2007
De Gruyter Oldenbourg (Verlag)
978-3-486-58369-4 (ISBN)
21,95 inkl. MwSt
Man kennt zwar heute geeignete Methoden, Unstimmigkeiten im Datenbestand zu vermeiden, mit denen man sowohl kleine als auch große Datenstände optimal strukturieren und verwalten kann. Oft fehlt aber ein Leitfaden, der diese Methoden sinnvoll zu einer durchgängigen und praxisorientierten Vorgehensweise kombiniert. Genau dieser Leitfaden ist das zentrale Thema des vorliegenden Lehrbuchs. Anhand vieler praktischen Beispiele wird in umfassender Weise gezeigt, wie relationale Datenbanken idealerweise entworfen werden sollten und wie anschließend die Daten in der relationalen Datenbank verarbeitet werden können. Relationale Datenbanken haben sich in den vergangenen 30 Jahren zu einem fundamentalen Bestandteil betrieblicher Informationssysteme entwickelt. Allerdings ist es alles andere als trivial, diese relationalen Datenbanken so zu strukturieren, dass sich bei deren Verarbeitung keine Unstimmigkeiten im Datenbestand ergeben. Man kennt zwar heute geeignete Methoden, mit denen man sowohl kleine als auch große Datenstände optimal strukturieren und verwalten kann. Oft fehlt aber ein Leitfaden, der diese Methoden sinnvoll zu einer durchgängigen und praxisorientierten Vorgehensweise kombiniert. Genau dieser Leitfaden ist das zentrale Thema des vorliegenden Lehrbuchs. Anhand vieler praktischen Beispiele wird in umfassender Weise gezeigt, wie relationale Datenbanken idealerweise entworfen werden sollten und wie anschließend die Daten in der relationalen Datenbank verarbeitet werden können. Das vorliegende Buch ist gedacht als Basis für eine Grundlagenvorlesung über den Entwurf und die Verarbeitung relationaler Datenbanken. Es eignet sich aber auch für ein Selbststudium oder als Nachschlagewerk für den Datenbankspezialisten, der in der Praxis relationale Datenbanken entwickelt und verarbeitet. Das vorliegende Buch ist gedacht als Basis für eine Grundlagenvorlesung über den Entwurf und die Verarbeitung relationaler Datenbanken. Es eignet sich aber auch für ein Selbststudium oder als Nachschlagewerk für den Datenbankspezialisten, der in der Praxis relationale Datenbanken entwickelt und verarbeitet.

'1;Inhalt;6
2;Vorwort;10
3;Abbildungsverzeichnis;12
4;1 Einführung;16
4.1;1.1 Datenbanken und Datenbankentwurf;16
4.2;1.2 Arbeiten mit relationalen Datenbanken;20
4.3;1.3 Vom Entwurf zur Verarbeitung relationaler Datenbanken;24
5;2 Entity-Relationship- Datenmodellierung;26
5.1;2.1 Entitätstyp;26
5.1.1;2.1.1 Strukturierungselement Entitätstyp;27
5.1.2;2.1.2 Attribut;27
5.1.3;2.1.3 Wertebereich;28
5.1.4;2.1.4 Primärschlüssel;29
5.1.5;2.1.5 Weak-Entitätstyp;30
5.1.6;2.1.6 Integritätsbedingungen;31
5.1.7;2.1.7 Übungsaufgabe 1;32
5.2;2.2 Beziehungstyp;33
5.2.1;2.2.1 Allgemeiner Beziehungstyp: Assoziation;33
5.2.2;2.2.2 Spezielle Beziehungstypen: Abhängigkeit, Aggregation, Generalisierung;35
5.2.3;2.2.3 Beziehungsentitätstyp;38
5.2.4;2.2.4 Multiplizität;40
5.2.5;2.2.5 Rolle;43
5.2.6;2.2.6 Attribut und Fremdschlüssel;44
5.2.7;2.2.7 Primärschlüssel;45
5.2.8;2.2.8 Beziehungstypen mit einem Grad 2;48
5.2.9;2.2.9 Vermeidung höhergradiger Beziehungstypen;51
5.2.10;2.2.10 Übungsaufgabe 2;57
5.2.11;2.2.11 Übungsaufgabe 3;58
5.3;2.3 Klassische ER-Datenmodellierung;59
5.3.1;2.3.1 Entitätstyp;59
5.3.2;2.3.2 Beziehungstyp;60
5.3.3;2.3.3 Beziehungskomplexitäten;61
5.3.4;2.3.4 Übungsaufgabe 4;65
6;3 Relationale Datenmodellierung und Normalisierung;66
6.1;3.1 Grundlagen der relationalen Datenmodellierung;66
6.1.1;3.1.1 Relation;67
6.1.2;3.1.2 Attribut;67
6.1.3;3.1.3 Wertebereich;68
6.1.4;3.1.5 Fremdschlüssel;69
6.1.5;3.1.6 Integritätsbedingung;70
6.2;3.2 Überführung des ER-Datenmodells in ein Relationenmodell;71
6.2.1;3.2.1 Überführung eines Entitätstyps;71
6.2.2;3.2.2 Überführung eines Beziehungstyps;74
6.2.3;3.2.3 Übungsaufgabe 5;81
6.2.4;3.2.4 Übungsaufgabe 6;81
6.3;3.3 Normalisierung im Relationenmodell;81
6.3.1;3.3.1 Grundidee der Normalisierung;81
6.3.2;3.3.2 Attribut-Abhängigkeiten;83
6.3.3;3.3.3 Erste Normalform;86
6.3.4;3.3.4 Zweite Normalform;88
6.3.5;3.3.5 Dritte Normalform;91
6.3.6;3.3.6 Boyce-Codd-Normalform;93
6.3.7;3.3.7 Vierte Normalform;96
6.3.8;3.3.8 Übungsaufgabe 7;98
6.3.9;3.3.9 Übungsaufgabe 8;99
7;4 Datenbanksprache SQL;102
7.1;4.1 Datendefinition;102
7.1.1;4.1.1 Schema und Tabellen;103
7.1.2;4.1.2 Datentypen und weitere Integritätsbedingungen;104
7.1.3;4.1.3 Änderung einer Tabelle;107
7.1.4;4.1.4 Views und Indexe;108
7.1.5;4.1.5 Übungsaufgabe 9;110
7.2;4.2 Datenabfrage;111
7.2.1;4.2.1 Datenbankoperatoren Projektion, Selektion und Verbund (Join);111
7.2.2;4.2.2 Die SELECT-Anweisung;112
7.2.3;4.2.3 Ausgabe aller Datensätze einer Relation;114
7.2.4;4.2.4 Ausgabe spezieller Attribute einer Relation;114
7.2.5;4.2.5 Ausgabe ohne Duplikate;115
7.2.6;4.2.6 Ausgabe berechneter Attribute;116
7.2.7;4.2.7 Ausgabe spezieller Datensätze einer Relation;116
7.2.8;4.2.8 Ausgabe sortierter Datensätze;119
7.2.9;4.2.9 Ausgabe aggregierter Werte;120
7.2.10;4.2.10 Ausgabe aggregierter Werte mit Gruppierung;122
7.2.11;4.2.11 Ausgabe aggregierter Werte mit ausgewählter Gruppierung;123
7.2.12;4.2.12 Verwendung von Subabfragen;124
7.2.13;4.2.13 Verwendung von Subabfragen mit Existenz-Prüfung;128
7.2.14;4.2.14 Verknüpfung von Relationen;130
7.2.15;4.2.15 Verknüpfung von Relationen mit Bedingungen;131
7.2.16;4.2.16 Neue Formulierungsformen für Verknüpfungsbedingungen;135
7.2.17;4.2.17 Übungsaufgabe 10;140
7.2.18;4.2.18 Übungsaufgabe 11;141
7.2.19;4.2.19 Übungsaufgabe 12;141
7.3;4.3 Datenmanipulation;142
7.3.1;4.3.1 Einfügen von Datensätzen;142
7.3.2;4.3.2 Ändern von Datensätzen;144
7.3.3;4.3.3 Löschen von Datensätzen;145
7.3.4;4.3.4 Übungsaufgabe 13;146
7.3.5;4.3.5 Übungsaufgabe 14;147
8;5 Zusammenfassung und Ausblick;148
9;Anhang;154
9.1;Anhang 1: Strukturierungselemente der Entity- Relationship-Datenmodellierung;154
9.2;Anhang 2: Strukturierungselemente der relationalen Datenmodellierung;156
9.3;Anhang 3: Abbildung ER-Datenmodell ins normalisierte Relationenmodell;157
9.4;Anhang 4: Normalformen für rel

Dieses Lehrbuch erläutert eine durchgängige und praxisorientierte Vorgehensweise, um kleinere als auch große Datenbestände optimal zu strukturieren und zu verwalten. Lobenswert ist der didaktische Aufbau sowie die zahlreichen Übungsaufgaben mit Lösungen. Zentrale Datenbankthemen werden detailliert und anschaulich vermittelt. aus: IT Director 7-8/2007 (Juli 2007)

4 Datenbanksprache SQL (S. 87-88)

Untrennbar mit relationalen Datenbanken verbunden ist heute der Begriff SQL. SQL steht für Structured Query Language und bezeichnet die weit verbreitete Standard-Sprache für das Arbeiten mit relationalen Datenbanken. Der Name ist etwas irreführend, da SQL weit mehr darstellt als eine Abfragesprache. Die ursprüngliche Form von SQL, die Mitte der Siebziger Jahre bei der IBM entstanden ist, hat sich in den vergangenen 30 Jahren zu einer umfassenden Datenbanksprache entwickelt (SQL-Standards wurden 1986, 1989, 1992, 1999 und 2003 veröffentlicht). SQL bietet heute Sprachkonstrukte für

- die Datendefinition: Anlegen, Ändern und Löschen von Datenbankstrukturen,
- die Datenmanipulation: Einfügen, Ändern und Löschen von Datensätzen und
- die Datenabfrage: Abfragen von Datensätzen.

Mit diesen Sprachkonstrukten können heute nicht nur konventionelle Datenbanken mit relativ einfach strukturierten Massendaten verwaltet werden, sondern auch die unterschiedlichsten Non-Standard-Datenbanken wie bspw. im Bereich Data Warehouse, Multimedia oder XML. Dabei können die SQL-Anweisungen auf unterschiedliche Arten an das Datenbanksystem übermittelt werden:

- über eine interaktive DBS-Schnittstelle,
- eingebettet in eine Programmiersprache (embedded SQL, bspw. in Java) oder
- aus einem eigenständigen SQL-Programm heraus (SQL PL bei DB2 oder PL/SQL bei Oracle).

Aus diesem gesamten SQL-Spektrum soll im Folgenden der Sprachkern von SQL, also die grundlegenden und in der Praxis auch am häufigsten verwendeten SQL-Anweisungen, vorgestellt werden. Alle Anweisungen werden in Anlehnung an den genormten SQL-Standard diskutiert, die SQL-Dialekte existierender Datenbanksysteme werden nicht behandelt. Ebenfalls nicht behandelt werden Aspekte aus den Bereichen Non-Standard-Datenbanken (Data Warehouse, XML-Datenbanken, etc.) und Programmierspracheneinsatz. Der interessierte Leser sei diesbezüglich auf die einschlägige Datenbank-Literatur verwiesen.

4.1 Datendefinition

Bevor man Daten in eine Datenbank ablegen kann, muss zunächst einmal die entsprechende Datenbank angelegt und deren Struktur definiert werden. Dazu wird für jede Datenbank ein Schema-Name vereinbart, und es werden die zu diesem Schema gehörenden normalisierten (Basis-)Tabellen definiert. Daran anschließend können noch für die externe Ebene die Benutzersichten (Views) über die Basistabellen und für die interne Ebene einige Indexe zur Performance-Steigerung vereinbart werden. Die entsprechenden SQL-Anweisungen werden im Folgenden der Reihe nach vorgestellt.

4.1.1 Schema und Tabellen

Alle Definitionen für eine relationale Datenbank ergeben das so genannte relationale Schema. Daher muss zu Beginn der Definitionen zunächst ein leeres Schema definiert werden. Dies erfolgt mit der SQL-Anweisung

CREATE SCHEMA ,

Sofern das Datenbankschema später einmal wieder gelöscht werden soll, gibt es dafür die SQL-Anweisung

DROP SCHEMA , ,CASCADE / RESTRICT

Der Zusatz CASCADE / RESTRICT ist in vielen Datenbanksystemen optional. Er regelt, ob eine Datenbank, die noch Datenbank-Objekte enthält, gelöscht werden soll (CASCADE) oder nicht. Der Default-Wert ist RESTRICT.

Erscheint lt. Verlag 2.4.2007
Reihe/Serie Wirtschaftsinformatik kompakt
Verlagsort Berlin/München/Boston
Sprache deutsch
Maße 170 x 240 mm
Gewicht 367 g
Themenwelt Mathematik / Informatik Informatik Datenbanken
Mathematik / Informatik Informatik Netzwerke
Wirtschaft Betriebswirtschaft / Management Unternehmensführung / Management
Schlagworte Attribut-Abhängigkeiten • Beziehungskomplexitäten • Beziehungstyp • Boyce-Codd-Normalform • Datenbanken • Informatik • Mathematik, Informatik • Relationale Datenbank • Relationale Datenbanken • Wirtschaftsinformatik • Wirtschaftswissenschaften
ISBN-10 3-486-58369-7 / 3486583697
ISBN-13 978-3-486-58369-4 / 9783486583694
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Wie bewerten Sie den Artikel?
Bitte geben Sie Ihre Bewertung ein:
Bitte geben Sie Daten ein:
Mehr entdecken
aus dem Bereich