ISBN: 3540655476
TITLE: Einfhrung in den Sprachkern von SQL-99
AUTHOR: Panny, Wolfgang; Taudes, Alfred
Toc:

Teil I - Einfhrung und Grundlagen 1
1 Datenbanksysteme, Relationale Datenbanksysteme und SQL 3
1.1 Motivation zur Entwicklung von Datenbanksystemen 3
1.2 Was ist ein Datenbanksystem? 4
1.3 Was bringt das Datenbankkonzept? 9
1.4 Einige Daten zur Entwicklung von DBMS und SQL 13
2 Das Relationale Modell 21
2.1 Relationale Datenstruktur 22
2.1.1 Domnen 22
2.1.2 Relationen 23
2.1.3 Eigenschaften von Relationen 24
2.2 Relationale Integritt 25
2.2.1 Schlsselkandidat, Primrschlssel, Fremdschlssel 25
2.2.2 Relationale Integrittsbedingungen 26
2.3 Ein Beispiel: Die L-R-P-Datenbank 27
2.4 Relationale Datenmanipulation 29
2.4.1 Relationenalgebra 30
2.4.2 Die relationale Wertzuweisung 54
2.4.3 Der Relationenkalkl 55
2.4.4 Relationenalgebra versus Relationenkalkl 67
2.5 bungsaufgaben 68
Teil II - SQL fr den Endbenutzer 69
3 Abfragen (Queries) 71
3.1 Die SELECT-Abfrage anhand von Beispielen 72
3.1.1 Projektion und Restriktion 72
3.1.2 Produkt und Verbund 81
3.1.3 Gruppenfunktionen 87
3.2 Grundbausteine der SQL-Sprache 96
3.2.1 SQL-Zeichenvorrat und Bezeichner 96
3.2.1.1 SQL-Zeichenvorrat 96
3.2.1.2 Bezeichner 97
3.2.2 Numerische Werte 100
3.2.2.1 Numerischer Typ 100
3.2.2.2 Numerische Literale 104
3.2.2.3 Numerische Wertausdrcke 106
3.2.2.4 Numerische Funktionen 108
3.2.3 Zeichenketten 109
3.2.3.1 Zeichenketten-Typ 109
3.2.3.2 Zeichenketten-Literale 112
3.2.3.3 Zeichenketten-Wertausdrcke 113
3.2.3.4 Funktionen, die mit Zeichenketten zu tun haben 114
3.2.4 Datums- und Zeitangaben 118
3.2.4.1 DATETIME-Literale 118
3.2.4.2 DATETIME-Typ 120
3.2.4.3 DATETIME-Wertausdrcke 122
3.2.4.4 DATETIME-Funktionen 123
3.2.5 Werte mit einem benutzerdefinierten Typ 124
3.2.5.1 Benutzerdefinierter Typ 125
3.2.5.2 Cast-Funktionen 128
3.2.5.3 Benutzerdefinierte Wertausdrcke 129
3.2.6 Wertausdrcke 131
3.2.6.1 berblick 131
3.2.6.2 Primre Wertausdrcke 132
3.3 Suchbedingungen und Prdikate anhand von Beispielen 146
3.3.1 Einfache Prdikate 148
3.3.1.1 Vergleichsprdikat 148
3.3.1.2 BETWEEN-Prdikat 150
3.3.1.3 LIKE-Prdikat 153
3.3.1.4 NULL-Prdikat 156
3.3.2 Prdikate mit Unterabfragen 157
3.3.2.1 IN-Prdikat 157
3.3.2.2 EXISTS-Prdikat 160
3.3.2.3 Quantifiziertes Vergleichsprdikat 168
3.3.3 NULLwerte und dreiwertige Logik 172
3.4 Zusammenfassung: SELECT-Abfrage 175
3.5 Abfrageausdrcke 183
3.5.1 Verbundausdrcke 184
3.5.1.1 Kreuzverbund 185
3.5.1.2 Innerer Verbund 186
3.5.1.3 uerer Verbund 190
3.5.1.4 Verbundausdrcke als Tabellenreferenzen 193
3.5.2 Nichtverbund-Ausdrcke 194
3.5.2.1 UNION-Ausdruck 195
3.5.2.2 EXCEPT-Ausdruck 200
3.5.2.3 INTERSECT-Ausdruck 201
3.5.3 Verwendung von Abfrageausdrcken 202
3.5.4 Direkte Abfrageanweisung 203
3.6 bungsaufgaben 207
4 Schemaanweisungen 211
4.1 Basistabellen 212
4.1.1 Anlegen einer Tabellendefinition 214
4.1.2 Lschen einer Tabellendefinition 224
4.1.3 Andern einer Tabellendefinition 226
4.2 Views 227
4.2.1 Anlegen einer Viewdefinition 231
4.2.2 Lschen einer Viewdefinition 235
4.3 Benutzerdefinierte Typen 236
4.3.1 Anlegen einer Typdefinition 238
4.3.2 Lschen einer Typdefinition 240
4.4 Schema-Routinen 241
4.4.1 Anlegen der Definition einer SQL-Routine 244
4.4.1.1 CREATE PROCEDURE - Anweisung 244
4.4.1.2 CREATE FUNCTION - Anweisung 248
4.4.1.3 Routine-Charakteristik 250
4.4.2 Lschen der Definition einer SQL-Routine 255
4.4.3 Aufrufe von SQL-Routinen 256
4.4.3.1 Prozeduraufruf 257
4.4.3.2 Funktionsaufruf 260
4.4.4 berblick: Steueranweisungen 263
4.5 Berechtigungen 264
4.5.1 Die laufende Benutzerkennung 268
4.5.2 Zugriffsregeln 270
4.5.3 Anlegen der Definition eines Schemaobjekts 275
4.5.4 Die GRANT-Anweisung 277
4.5.5 Die REVOKE-Anweisung 283
4.5.6 Lschen der Definition eines Schemaobjekts 288
4.6 Schemata 290
4.6.1 Anlegen einer Schemadefinition 291
4.6.2 Lschen einer Schemadefinition 293
4.6.3 Implizite Schemanamen und Katalognamen 294
4.6.3.1 Implizite Katalognamen 295
4.6.3.2 Implizite Schemanamen 296
4.7 berblick: Schemaanweisungen 297
4.8 Die SQL-Umgebung 299
4.8.1 Komponenten der SQL-Umgebung 300
4.8.2 Das Data Dictionary 301
4.9 bungsaufgaben 307
5 Datenanweisungen 311
5.1 Direkte Abfrageanweisung 312
5.2 Einfgen von Zeilen 313
5.3 ndern von Zeilen 318
5.4 Lschen von Zeilen 323
5.5 berblick: Datenanweisungen 325
5.6 bungsaufgaben 327
Teil III - SQL und Anwendungsentwicklung 329
6 Modulsprache 331
6.1 Module und Modul-Prozeduren 332
6.2 Spezifische Datenanweisungen der Modulsprache 343
6.2.1 SELECT INTO - Anweisung 344
6.2.2 Cursors 348
6.2.2.1 DECLARE CURSOR - Anweisung 348
6.2.2.2 OPEN-Anweisung 353
6.2.2.3 FETCH INTO - Anweisung 354
6.2.2.4 UPDATE CURRENT - Anweisung 359
6.2.2.5 DELETE CURRENT - Anweisung 360
6.2.2.6 CLOSE-Anweisung 361
6.3 Fehlerdiagnose 363
6.4 berblick: Prozeduranweisungen 366
6.5 bungsaufgaben 367
7 Eingebettetes SQL 369
7.1 Eingebettetes SQL-Host-Programm 370
7.2 DECLARE-Section 373
7.3 WHENEVER-Anweisung 380
7.4 bungsaufgaben 382
8 Verbindungen, Sitzungen und Transaktionen 385
8.1 SQL-Agenten, Client-Server-Konzept 386
8.2 SQL-Verbindungen 388
8.3 SQL-Sitzungen 389
8.4 SQL-Transaktionen 390
8.4.1 COMMIT-Anweisung 396
8.4.2 ROLLBACK-Anweisung 397
8.4.3 SET TRANSACTION - Anweisung 398
8.4.4 berblick: Transaktionsanweisungen 400
8.5 bungsaufgaben 400
Lsungen der bungsaufgaben 403
Literaturverzeichnis 423
Index 429

END

