Die Schwerpunkte des Buches sind relationale Datenbanken, Entwurf von Datenbanken und die Programmiersprache SQL. Aber auch Themen wie Recovery, Concurrency, Sicherheit und Integrität werden hinreichend ausführlich besprochen. Hervorzuheben ist der Bezug zur Praxis. Eine Beispieldatenbank wird im Anhang im Detail vorgestellt. Zahlreiche Zusammenfassungen und die Übungsaufgaben mit Lösungen zu jedem Kapitel dienen der Vertiefung des Stoffes und erhöhen den Lernerfolg. Mittels einer zur Verfügung gestellten Software lässt sich die Beispieldatenbank installieren, so dass die Aufgaben und Beispiele direkt am Rechner nachvollzogen werden können. Die vorliegende zweite Auflage wurde erheblich überarbeitet. Neben zahlreichen kleineren Änderungen wurden folgende umfangreichen Anpassungen vorgenommen: Die Beispieldatenbank Radl im Anhang wurde erweitert; der Abschnitt über objektorientierte Datenbanken wurde durch aktuelle Entwicklungen ergänzt; neben Oracle wird jetzt auch auf MS-Access verwiesen, dBase wurde durch MS-Access ersetzt; weiter dient jetzt C++ statt C als Einbettungssprache. Das Buch wurde im Rahmen des http://medoc. informatik. tu-muenchen. de/deutsch/medoc. html>MeDoc-Projektes in die elektronische Informatik-Bibliothek aufgenommen und steht auch über das Projekt http://InterDoc. OFFIS. Uni-Oldenburg. de>InterDoc weiterhin zur Verfügung.
Inhaltsverzeichnis
1 Datenorganisation.- 1.1 Überblick.- 1.2 Speicherung von Daten.- 1.3 Speicherung auf adressierbarem Speicher.- 1.4 Einstufige physische Datenstrukturen.- 1.5 Mehrstufige Datenstrukturen.- 1.6 Index Sequentielle Dateien.- 1.7 Hash-Verfahren.- 1.8 Primär- und Sekundärschlüssel.- 1.9 Übungsaufgaben.- 2 Übersicht über Datenbanken.- 2.1 Definition einer Datenbank.- 2.2 Anforderungen an eine Datenbank.- 2.3 Der Datenbank-Administrator.- 2.4 Datenbankmodelle.- 2.5 Transaktionen.- 2.6 Übungsaufgaben.- 3 Das Relationenmodell.- 3.1 Beispiel zu relationalen Datenbanken.- 3.2 Relationale Datenstrukturen.- 3.3 Relationale Integritätsregeln.- 3.4 Relationale Algebra.- 3.5 Zusammenfassung.- 3.6 Übungsaufgaben.- 4 Die Datenbankzugriffssprache SQL.- 4.1 Der Abfragebefehl Select.- 4.2 Manipulationsbefehle in SQL.- 4.3 Relationale Algebra und SQL.- 4.4 Zusammenfassung.- 4.5 Übungsaufgaben.- 5 Datenbankdesign.- 5.1 Normalformen.- 5.2 Entity-Relationship-Modell.- 5.3 Zusammenfassung.- 5.4 Übungsaufgaben.- 6 Die Datenbankbeschreibungssprache SQL.- 6.1 Relationen erzeugen, ändern und löschen.- 6.2 Erzeugen und Entfernen eines Index.- 6.3 Sichten (Views).- 6.4 Kataloge und Schemata.- 6.5 Besonderheiten in Oracle und MS-Access.- 6.6 Systemtabellen in SQL und Oracle.- 6.7 Zusammenfassung.- 6.8 Übungsaufgaben.- 7 Concurrency und Recovery.- 7.1 Recovery.- 7.2 Zwei-Phasen-Commit.- 7.3 Concurrency.- 7.4 Sperrmechanismen.- 7.5 Deadlocks.- 7.6 Sperren in SQL-2, MS-Access und Oracle.- 7.7 Zusammenfassung.- 7.8 Übungsaufgaben.- 8 Sicherheit und Integrität.- 8.1 Sicherheit.- 8.2 Integrität.- 8.3 Ergänzungen zum Relationenmodell.- 8.4 Zusammenfassung.- 8.5 Übungsaufgaben.- 9 Eingebettetes SQL.- 9.1 Einbettung von SQL in C++.- 9.2 Programmieren in C++ mit eingebettetem SQL.- 9.3Transaktionsbetrieb mit eingebettetem SQL.- 9.4 SQL-Cursor.- 9.5 Besonderheiten in MS-Access.- 9.6 Zusammenfassung.- 9.7 Übungsaufgaben.- 10 Nicht-Relationale Datenhanken.- 10.1 Invertierte Listen.- 10.2 Hierarchische Datenbanken.- 10.3 Hierarchisches System IMS.- 10.4 Netzwerkartige Systeme.- 10.5 CODASYL Datenbank UDS.- 10.6 Übungsaufgaben.- 11 Moderne Datenbankkonzepte.- 11.1 Verteilte Datenbanken.- 11.2 Objektorientierte Datenbanken.- 11.3 Übungsaufgaben.- Anhang A Die Beispieldatenbank Radl.- Al Die Idee der Radl-Datenbank.- A2 Entity-Relationship-Modell der Radl-Datenbank.- A3 Die Basisrelationen der Radl-Datenbank.- A4 Deklaration der Radl-Datenbank.- A5 Zugriffe auf die Radl-Datenbank.- Anhang B SQL-Syntaxdiagramme.- Anhang C Lösungen zu den Übungsaufgaben.- Anhang D Hinweise zu Begleitprogrammen.- Literaturhinweis.