... Vorwort ... 11
1 ... Einleitung ... 15
... 1.1 ... Aufbau des Buches ... 15
... 1.2 ... Das durchgehende Datenbankbeispiel ... 16
... 1.3 ... Die SQL-Übungen ... 17
... 1.4 ... Übungssoftware SQL-Teacher ... 17
... 1.5 ... Notationen ... 22
2 ... Datenbankentwurf ... 23
... 2.1 ... Was ist SQL? ... 23
... 2.2 ... Phasen der Datenbankentwicklung ... 25
3 ... Datenbankdefinition ... 43
... 3.1 ... Einführung ... 43
... 3.2 ... Tabellen und Datentypen ... 45
... 3.3 ... Tabellen anlegen (CREATE TABLE) ... 54
... 3.4 ... Integritätsregeln ... 55
... 3.5 ... Domänen ... 73
... 3.6 ... Tabellendefinitionen verändern (ALTER TABLE) ... 82
... 3.7 ... Tabellen löschen (DROP TABLE) ... 86
... 3.8 ... Indizes ... 88
4 ... Datensätze einfügen (INSERT INTO) ... 95
5 ... Daten abfragen (SELECT) ... 99
... 5.1 ... Aufbau des SELECT-Befehls ... 102
... 5.2 ... SELECT mit Bedingung (WHERE) ... 106
... 5.3 ... Ausgabe sortieren (ORDER BY) ... 112
... 5.4 ... SELECT mit Gruppenbildung (GROUP BY) ... 117
... 5.5 ... Mengenoperationen (UNION, INTERSECT, EXCEPT/MINUS) ... 121
... 5.6 ... Funktionen für SELECT-Befehle ... 126
... 5.7 ... NULL-Werte in Abfragen ... 140
... 5.8 ... INSERT mit SELECT ... 141
6 ... Daten aus mehreren Tabellen abfragen (JOIN) ... 143
... 6.1 ... Relationenalgebra ... 146
... 6.2 ... Der innere Verbund (INNER JOIN) ... 147
... 6.3 ... Der äußere Verbund (LEFT JOIN/RIGHT JOIN) ... 153
7 ... Unterabfragen (Subselects) ... 157
... 7.1 ... Unterabfragen, die eine Zeile zurückgeben ... 159
... 7.2 ... Unterabfragen, die mehr als eine Zeile zurückgeben ... 162
... 7.3 ... Regeln für die Verwendung von Unterabfragen ... 167
8 ... Datensätze ändern (UPDATE) ... 169
... 8.1 ... Unterabfragen in UPDATE-Befehlen ... 172
9 ... Datensätze löschen (DELETE FROM) ... 175
... 9.1 ... Unterabfragen in DELETE-Befehlen ... 178
10 ... Datensichten ... 181
... 10.1 ... Datensicht erstellen (CREATE VIEW) ... 181
... 10.2 ... Verhalten von Datensichten beim Aktualisieren ... 184
... 10.3 ... Aktualisieren mit Prüfoption ... 187
... 10.4 ... Views ändern und löschen (DROP VIEW) ... 188
11 ... Transaktionen ... 191
... 11.1 ... Eigenschaften von Transaktionen ... 192
... 11.2 ... Isolationsebenen bei Transaktionen ... 198
12 ... Routinen und Trigger ... 201
... 12.1 ... Funktionen und Prozeduren ... 201
... 12.2 ... Trigger (CREATE TRIGGER) ... 205
13 ... Zeichensätze und Lokalisierung ... 211
14 ... Benutzer, Privilegien und Sicherheit ... 217
... 14.1 ... Überblick ... 217
... 14.2 ... Benutzer und Rollen ... 218
... 14.3 ... Benutzerprivilegien einrichten (GRANT) ... 219
... 14.4 ... Benutzerrechte und Views ... 222
... 14.5 ... Benutzerprivilegien löschen (REVOKE) ... 223
15 ... Systemkatalog ... 225
... 15.1 ... Aufbau ... 225
... 15.2 ... Informationen des Systemkatalogs abfragen ... 226
16 ... SQL/XML ... 229
... 16.1 ... Was ist XML? ... 229
... 16.2 ... Der XML-Datentyp ... 232
... 16.3 ... XML-Funktionen ... 233
... 16.4 ... Export der Datenbank als XML ... 235
17 ... Lösungen zu den Aufgaben ... 237
... 17.1 ... Lösungen zu Kapitel 2 ... 237
... 17.2 ... Lösungen zu Kapitel 3 ... 239
... 17.3 ... Lösungen zu Kapitel 4 ... 251
... 17.4 ... Lösungen zu Kapitel 5 ... 252
... 17.5 ... Lösungen zu Kapitel 6 ... 261
... 17.6 ... Lösungen zu Kapitel 7 ... 264
... 17.7 ... Lösungen zu Kapitel 8 ... 265
... 17.8 ... Lösungen zu Kapitel 9 ... 266
... 17.9 ... Lösungen zu Kapitel 10 ... 267
... 17.10 ... Lösungen zu Kapitel 12 ... 269
... 17.11 ... Lösungen zu Kapitel 13 ... 269
... 17.12 ... Lösungen zu Kapitel 14 ... 270
... 17.13 ... Lösungen zu Kapitel 15 ... 274
18 ... Beispieldatenbank ... 275
19 ... SQL-Syntax gängiger Datenbanken ... 283
... 19.1 ... Die ausgewählten Datenbanken ... 283
... 19.2 ... Datentypen ... 284
... 19.3 ... Tabellen anlegen, ändern, löschen ... 288
... 19.4 ... Domänen anlegen, ändern, löschen ... 295
... 19.5 ... Indizes anlegen, ändern, löschen ... 297
... 19.6 ... Datensätze einfügen, ändern, löschen ... 299
... 19.7 ... Daten abfragen (SELECT) ... 301
... 19.8 ... Datensichten (VIEWS) ... 309
... 19.9 ... Transaktionen ... 310
... 19.10 ... Prozeduren/Funktionen/Trigger ... 311
... 19.11 ... Benutzer, Privilegien, Sicherheit ... 316
... 19.12 ... Unterstützung von XML in Datenbanken ... 318
20 ... Inhalt der CD-ROM ... 319
... Index ... 321