Vorwort 15 Teil I Grundlagen 19 i Einführung In das Thema

Werbung
Vorwort
15
Teil I
Grundlagen
19
i
Einführung In das Thema Datenbanken
21
I.I
Warum ist Datenbankdesign wichtig?
26
i.2
1.2.1
1.2.2
1.2.3
Dateisystem und Datenbanken
Historische Wurzeln
Probleme bei der Datenhaltung im Dateisystem
Datenredundanzen und Anomalien
28
29
30
37
1.3
Das Fallbeispiel
39
1.4
Zusammenfassung
40
1.5
1.5.1
1.5.2
Aufgaben
Wiederholung
Zum Weiterdenken
43
43
44
2
Datenbanksysteme, Datenbankanwendungen und Middleware . . . .
45
2.1
Datenbanksysteme
45
2.2
Verschiedene Arten von Datenbanksystemen
49
2.3
DBMS-Funktionen
50
2.4
2.4.1
2.4.2
2.4.3
2.4.4
2.4.5
Datenbankmodelle
Hierarchische Datenbanken
Netzwerk-Datenbanken
Relationale Datenbanken
ER-Datenbankmodelle
Objektorientierte Datenbanken
53
54
59
61
67
70
2.5
2.5.1
2.5.2
2.5.3
Datenbankanwendungen
Einschichtige Datenbankanwendungen
Zweischichtige Datenbankanwendungen
N-schichtige Datenbankanwendungen
75
76
76
78
2.6
2.6.1
2.6.2
2.6.3
Middleware
ODBC
.
ADO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ADO.NET
79
80
81
83
2.7
Zusammenfassung
84
2.8
2.8.1
2.8.2
Aufgaben
Wiederholung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Zum Weiterdenken
92
92
92
3
Das relationale Datenbankmodell
95
3.1
Entitäten und Attribute
96
3.2
Tabellen
97
3.3
Schlüssel
100
3.4
3.4.1
3.4.2
3.4.3
3.4.4
3.4.5
3.4.6
3.4.7
3.4.8
Relationale Operatoren
DIFFERENCE
DIVIDE
INTERSECT
JOIN
PRODUCT
PROJECT
SELECT
UNION
106
106
107
107
108
110
111
112
112
3.5
3.5.1
3.5.2
3.5.3
3.5.4
3.5.5
Beziehungen innerhalb der Datenbank
i:i-Beziehung
i:N-Beziehung
M:N-Beziehung
Optionale und nicht-optionale Beziehungen
Primär-/Fremdschlüssel und Datenredundanzen
3.6
Metadaten
118
3.7
Indizes
121
3.8
Zusammenfassung
122
3.9
3.9.1
3.9.2
Aufgaben
Wiederholung
Zum Weiterdenken
127
127
127
.■.
.
.
.
113
113
115
116
117
117
Teil II DATENBANKDESIGN UND IMPLEMENTIERUNG
131
4
ER-Datenbankmodellierung
. 133
4.1
4.1.1
4.1.2
4.1.3
4.1.4
Datenmodelle und Abstraktion
Das konzeptionelle Modell
Das interne Modell
Das externe Modell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Das physikalische Modell
4.2
4.2.1
4.2.2
4.2.3
4.2.4
Das Entity-Relationship-Modell
Entitäten .
Attribute
Primärschlüssel
Beziehungen
140
140
141
147
. 149
4.3
Erstellen eines ER-Diagramms
164
4.4
Zusammenfassung
172
4.5
4.5.1
4.5.2
Aufgaben
Wiederholung
Zum Weiterdenken
175
176
176
5
Normalisierung
179
5.1
5.1.1
5.1.2
5.1.3
5.1.4
5.1.5
5.1.6
Warum Normalisierung?
Das Normalisierungsbeispiel
Erste Normalform
Zweite Normalform
Dritte Normalform
Boyce-Codd-Normalform (BCNF)
Höhere Normalformen
179
181
182
186
188
193
194
5.2
Normalisierung und Datenbankdesign
198
5.3
Denormalisierung
202
5.4
Zusammenfassung
202
5.5
5.5.1
5.5.2
Aufgaben
Wiederholung
Zum Weiterdenken
204
204
. 205
134
135
137
138
139
6
SQL-Grundlagen
207
6.1
6.1.1
6.1.2
6.1.3
6.1.4
Einführung
Historischer Überblick
Datentypen
Die SQL-Komponenten
Logische Verknüpfungen
208
209
210
212
218
6.2
6.2.1
6.2.2
6.2.3
6.2.4
Daten mit SQL abfragen .
Einfache Abfragen
Tabellen verknüpfen mit Joins
Verschachtelte Abfragen
Sichten
6.3
6.3.1
6.3.2
6.3.3
Daten mit SQL verändern
INSERT
UPDATE
DELETE
260
260
261
262
6.4
6.4.1
6.4.2
6.4.3
6.4.4
Weitere wichtige SQL-Befehle
Mengenfunktionen
Stringfunktionen
Numerische Funktionen
Datetime-Funktionen
263
263
268
270
272
6.5
Zusammenfassung .
273
6.6
6.6.1
6.6.2
Aufgaben
Wiederholung
Zum Weiterdenken
277
277
277
.
.
223
224
245
255
256
Teil III WEITERFÜHRENDE THEMEN
279
7
Projektablauf bei der Erstellung einer Datenbank .
281
7.1
7.1.1
7.1.2
7.1.3
7.1.4
7.1.5
Der System Development Life Cycle
.
Planung
Analyse
System-Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Implementierung
Wartung
283
284
286
288
289
291
7.2
7.2.1
7.2.2
7.2.3
7.2.4
Der Datenbank-Lebenszyklus
Grundlegende Analyse .
Datenbankdesign
Implementierung und Datenimport
Test und Evaluierung
291
292
297
309
311
7.2.5
Betrieb
311
7.2.6
Wartung und Evolution
312
7.3
Zusammenfassung
312
7.4
7.4.1
Aufgaben
Wiederholung
314
314
8
Transaktionen und konkurrierende Zugriffe . . . . . . . . . . . . . . . . . . . .
315
8.1
8.1.1
8.1.2
8.1.3
Was ist eine Transaktion?
Eigenschaften einer Transaktion
Transaktionsverwaltung mit SQL
Das Transaktionsprotokoll
315
319
320
322
8.2
8.2.1
8.2.2
8.2.3
8.2.4
Konkurrierende Zugriffe .
Lost Updates
Dirty Read
Nonrepeatable Read
Phantome .
324
324
325
326
327
8.3
8.3.1
8.3.2
8.3.3
8.3.4
Sperrmechanismen (Locks) .
Granularität.
Sperrtypen
Zwei-Phasen-Locking
Deadlocks
8.4
Zusammenfassung
338
8.5
8.5.1
8.5.2
Aufgaben
Wiederholung
Zum Weiterdenken
341
341
342
9
Die Client-Server-Architektur
343
9.1
9.1.1
9.1.2
Was ist Client-Server?
Geschichte von Client-Server
Vorteile von Client-Server
343
344
345
9.2
9.2.1
9.2.2
9.2.3
9.2.4
Client-Server-Architektur
Client-Komponenten
Server-Komponenten
Middleware
Netzwerk-Protokolle
348
351
352
353
357
9.3
Zusammenfassung
363
9.4
9.4.1
Aufgaben .
Wiederholung
366
366
328
329
334
. 335
336
io
Verteilte Datenbanksysteme
367
IO.I
Vor- und Nachteile verteilter Datenbanksysteme
368
10.2
Verteilte Datenverarbeitung vs. verteilte Datenbanken
373
10.3
Komponenten eines verteilten Datenbanksystems
375
10.4
Transparenz beim Datenzugriff
10.4.1 Transparente Datenverteilung .
378
379
10.4.2 Transparentes Transaktionsmanagement
384
10.5
Datenfragmentierung
387
10.6
Replikation
390
10.7
Zusammenfassung
391
10.8
Aufgaben
10.8.1 Wiederholung
394
394
11
Data-Warehouses
395
11.1
Die Notwendigkeit der Datenanalyse
397
11.2
11.2.1
11.2.2
Decision Support Systeme
Der Unterschied zwischen operationalen Daten und DSS-Daten ..
Anforderungen an eine DSS-Datenbank
398
401
409
11.3
11.3.1
11.3.2
417
Das Data-Warehouse
412
Data-Marts
. 417
Zwölf Eigenschaften, an denen man ein Data-Warehouse erkennen kann
11.4
11.4.1
11.4.2
11.4.3
OLAP (Online Analytical Processing)
OLAP-Architekturen
Relationales OLAP (ROLAP)
Multidimensionales OLAP (MOLAP) .
418
423
428
432
11.5
11.5.1
11.5.2
11.5.3
11.5.4
11.5.5
11.5.6
Das Sternschema
Fakten
Dimensionen
Attribute
Attribut-Hierarchien
Stern-Schemata in der Praxis
Techniken zur Erhöhung der Performance
436
436
437
437
440
441
442
11.6
Data-Mining
11.7
Zusammenfassung
.
.
445
448
ii.8
II.8.1
Aufgaben
Wiederholung
449
449
A
Lösungen zu den Übungsaufgaben
451
A.i
A.I.I
A.i.2
Kapitel i
Wiederholungsaufgaben
Aufgaben Zum Weiterdenken
451
451
453
A.2
A.2.1
A.2.2
Kapitel 2 .
Wiederholungsaufgaben
Aufgaben Zum Weiterdenken
453
453
455
A.3
A.3.1
A.3.2
Kapitel 3
Wiederholungsaufgaben
Aufgaben Zum Weiterdenken
456
456
458
A.4
A.4.1
A.4.2
Kapitel 4
Wiederholungsaufgaben
Aufgaben Zum Weiterdenken
459
459
461
A.5
A.5.1
A.5.2
Kapitel 5
Wiederholungsaufgaben
Aufgaben Zum Weiterdenken
461
461
462
A.6
A.6.1
A.6.2
Kapitel 6
Wiederholungsaufgaben
Aufgaben Zum Weiterdenken
463
463
465
A.7
A.7.1
A.7.2
Kapitel 7
Wiederholungsaufgaben
Aufgaben Zum Weiterdenken
470
470
472
A.8
A.8.1
A.8.2
Kapitel 8
Wiederholungsaufgaben
Aufgaben Zum Weiterdenken
472
472
474
A.9
A.9.1
A.9.2
Kapitel 9
Wiederholungsaufgaben
Aufgaben Zum Weiterdenken
474
474
476
A.io
Kapitel 10
A.10.1 Wiederholungs aufgaben
476
476
A.n
Kapitel 11
478
A.II.I
Wiederholungsaufgaben
478
Stichwortverzeichnis
481
Herunterladen