Zum Hauptinhalt springen Zur Suche springen Zur Hauptnavigation springen

Datenbanksysteme

49,90 €

Sofort verfügbar, Lieferzeit: Sofort lieferbar

Format auswählen

Datenbanksysteme, Rheinwerk Verlag
Das umfassende Lehrbuch
Von Michael Kofler, im heise shop in digitaler Fassung erhältlich

Produktinformationen "Datenbanksysteme"

Datenbanken sind das Rückgrat moderner IT-Systeme. Wie Sie sicher mit ihnen arbeiten, zeigt Ihnen Dr. Michael Kofler in diesem umfassenden Handbuch. Sie lernen grundlegende Begriffe und Konzepte kennen, die Sie für gutes Datenbankdesign brauchen, und erfahren, wie Sie Daten modelliere und strukturieren. Ein Schnellkurs in SQL zeigt Ihnen, wie Daten abgefragt und geändert werden, Praxiswissen zur Client-Entwicklung und DBMS-Administration machen Sie fit für den Berufsalltag, Übungen und anschauliche Beispiele helfen Ihnen beim Selbststudium und der Prüfungsvorbereitung. Aus dem Inhalt:
  • Datenbankmodellierung: vom ER-Modell zum perfekten Schema
  • Datentypen
  • Primary Keys, Foreign Keys und referenzielle Integrität
  • Indizes
  • Daten mit SQL abfragen und ändern
  • SQL für Fortgeschrittene: Subqueries, Transaktionen, Rekursion, DDL
  • Client-Programmierung
  • Benutzerverwaltung und Access Control
  • Backups und Logging
  • Replikation und High Availability
  • Stored Procedures und Trigger
  • NoSQL: Datenverarbeitung jenseits relationaler Datenbanken
  Materialien zum Buch ... 12   Vorwort ... 13 TEIL I.  Grundlagen ... 17   1.  Wozu Datenbanken? ... 19        1.1 ... Datenbanken sind allgegenwärtig ... 19        1.2 ... Warum eine Excel-Tabelle nicht ausreicht ... 24        1.3 ... Die erste eigene Datenbank ... 27        1.4 ... Realisierung des Beispiels mit der MySQL Workbench ... 35   2.  Grundlagen relationaler Datenbanken ... 47        2.1 ... Datenbank versus Datenbankmanagementsystem ... 47        2.2 ... Das relationale Modell ... 56        2.3 ... Transaktionen ... 65        2.4 ... Datensicherheit und ACID ... 68        2.5 ... Codds zwölf Gebote ... 78        2.6 ... Kritik am relationalen Modell ... 81        2.7 ... Wiederholungsfragen ... 86 TEIL II.  Datenbanken modellieren ... 91   3.  Datenbankmodellierung ... 93        3.1 ... Datenbankschema ... 94        3.2 ... Modellierungsstufen ... 96        3.3 ... Modellierungstechniken ... 100        3.4 ... Das Entity-Relationship-Modell ... 104        3.5 ... Sonderfälle im ER-Modell ... 110        3.6 ... Alternative Diagrammformen und Notationen (IDEF1X, Min-Max, UML) ... 118        3.7 ... Vom ER-Diagramm zum Tabellenschema ... 129        3.8 ... Namensregeln ... 137        3.9 ... Normalformen ... 142        3.10 ... Normalisierungsbeispiel ... 154        3.11 ... Modellierung hierarchischer bzw. unstrukturierter Daten ... 157        3.12 ... Wiederholungsfragen ... 164   4.  Datentypen ... 169        4.1 ... SQL und das Kommando »CREATE TABLE« ... 169        4.2 ... Ganze Zahlen ... 172        4.3 ... Gleit- und Festkommazahlen ... 174        4.4 ... Zeichenketten ... 178        4.5 ... Datum und Uhrzeit ... 183        4.6 ... Boolesche Zustände ... 184        4.7 ... Binäre Daten (BLOBs) ... 185        4.8 ... NULL, Defaultwerte und Werteinschränkungen (CHECKs) ... 188        4.9 ... Besondere Datentypen ... 191        4.10 ... Eigene Datentypen ... 195        4.11 ... Virtuelle Spalten (Generated Columns) ... 197        4.12 ... Beispiele ... 198        4.13 ... Wiederholungsfragen ... 200   5.  Primary Keys, Foreign Keys und referenzielle Integrität ... 203        5.1 ... Primary Keys (Primärschlüssel) ... 204        5.2 ... Foreign Keys (Fremdschlüssel) ... 217        5.3 ... Foreign-Key-Beispiele ... 225        5.4 ... Wiederholungsfragen ... 232   6.  Indizes ... 235        6.1 ... Indexformen ... 236        6.2 ... Index-Interna und B-Trees ... 242        6.3 ... Indizes -- Pro und Kontra ... 257        6.4 ... Cache-Systeme für Abfragen ... 260        6.5 ... Wiederholungsfragen ... 262   7.  Physische Modellierung ... 265        7.1 ... DBMS-Auswahl ... 265        7.2 ... Dimensionierung von Datenbanken ... 269        7.3 ... Views ... 274        7.4 ... Partitionen ... 281        7.5 ... Wiederholungsfragen ... 286   8.  Modellierungsbeispiele ... 289        8.1 ... »books«-Datenbank ... 290        8.2 ... »todo«-Datenbank ... 292        8.3 ... »school«-Datenbank ... 301        8.4 ... »clouddb«-Datenbank ... 312        8.5 ... »sakila«-Datenbank ... 323        8.6 ... »employees«-Datenbank ... 329        8.7 ... Noch mehr Musterdatenbanken ... 332        8.8 ... Wiederholungsfragen ... 334 TEIL III.  Structured Query Language (SQL) ... 337   9.  Relationale Algebra und SQL ... 339        9.1 ... Relationale Algebra ... 340        9.2 ... Relationenkalkül (relationaler Calculus) ... 350        9.3 ... Structured Query Language (SQL) ... 355        9.4 ... Elementare SQL-Syntaxregeln ... 360        9.5 ... Wiederholungsaufgaben ... 362 10.  Daten abfragen (SELECT) ... 365        10.1 ... Zugriff auf die Beispieldatenbanken ... 365        10.2 ... Einfache Abfragen (WHERE, DISTINCT) ... 368        10.3 ... Tabellen verknüpfen (JOIN) ... 373        10.4 ... Ergebnisse gruppieren (GROUP BY) ... 385        10.5 ... Ergebnisse sortieren (ORDER BY) ... 389        10.6 ... Ergebnisse limitieren (LIMIT) ... 390        10.7 ... SELECT-Syntax-Zusammenfassung ... 392        10.8 ... Der Umgang mit NULL ... 393        10.9 ... Abfragen kombinieren (UNION) ... 395        10.10 ... Abfrageausführung und -optimierung ... 396        10.11 ... Wiederholungsaufgaben ... 407 11.  Daten ändern (INSERT, UPDATE, DELETE) ... 411        11.1 ... Daten einfügen (INSERT) ... 412        11.2 ... Daten ändern (UPDATE) ... 417        11.3 ... Daten löschen (DELETE) ... 421        11.4 ... Wiederholungsaufgaben ... 424 12.  Transaktionen ... 425        12.1 ... Transaktionen in SQL ... 426        12.2 ... Isolation Level ... 429        12.3 ... Dirty Read, Phantom Read und andere Isolation-Probleme ... 435        12.4 ... Locking-Verfahren ... 446        12.5 ... Multiversion Concurrency Control (MVCC) ... 453        12.6 ... Wiederholungsaufgaben ... 458 13.  Subqueries, Rekursion, Zusatzfunktionen ... 461        13.1 ... SQL-Funktionen ... 461        13.2 ... Subqueries ... 468        13.3 ... Window-Funktionen (OVER) ... 474        13.4 ... Rekursion ... 479        13.5 ... Data Definition Language (DDL) ... 484        13.6 ... Systemkatalog ... 489        13.7 ... Wiederholungsaufgaben ... 494 14.  Volltextsuche, geografische Daten, XML und JSON ... 495        14.1 ... Volltextindex und Volltextsuche ... 495        14.2 ... Geografische Daten (GIS-Funktionen) ... 500        14.3 ... XML ... 506        14.4 ... JSON ... 512        14.5 ... Wiederholungsaufgaben ... 515 TEIL IV.  Administration und Programmierung ... 517 15.  Benutzerverwaltung ... 519        15.1 ... Authentifizierung ... 520        15.2 ... Privilegien und Rollen ... 522        15.3 ... Administration der Benutzerrechte (DCL) ... 526        15.4 ... Ein Blick hinter die Kulissen ... 532        15.5 ... Server-Konfiguration und -Absicherung ... 534 16.  Logging und Backups ... 539        16.1 ... Logging ... 539        16.2 ... Backups ... 543        16.3 ... Import und Export ... 551 17.  Replikation und High Availability ... 555        17.1 ... Replikation ... 555        17.2 ... Replikations-Setup in MySQL ... 562        17.3 ... High Availability ... 566 18.  Stored Procedures und Trigger ... 567        18.1 ... Programmierung auf DBMS-Ebene versus Client-Code ... 567        18.2 ... Hello, Stored Procedure! ... 570        18.3 ... Stored Procedures und Funktionen ... 575        18.4 ... Fehlerabsicherung und Cursor ... 583        18.5 ... Administration und Sicherheit ... 587        18.6 ... Trigger ... 589 19.  Client-Programmierung ... 591        19.1 ... Konzepte der Client-Programmierung ... 591        19.2 ... Beispiel 1: Java und JDBC ... 596        19.3 ... Beispiel 2: Kotlin und Exposed ... 600 TEIL V.  NoSQL ... 607 20.  Von relationalen Datenbanken zu NoSQL ... 609        20.1 ... Verteilte Datenbankmanagementsysteme ... 610        20.2 ... Objektorientierte Datenbanken ... 619        20.3 ... Online Analytical Processing (OLAP) ... 625        20.4 ... NoSQL ... 633        20.5 ... Wiederholungsfragen ... 648 21.  MongoDB ... 651        21.1 ... Installation ... 651        21.2 ... Abfragen durchführen ... 656        21.3 ... Nicht relationales Datenbankdesign ... 662        21.4 ... »todo«-Datenbank ... 665   Anhang ... 669   A.  MySQL installieren und einrichten ... 669        A.1 ... MySQL Workbench ... 670        A.2 ... Onlinezugriff auf die Beispieldatenbanken ... 672        A.3 ... MySQL-Server unter Windows installieren ... 673        A.4 ... MySQL-Server unter macOS installieren ... 676        A.5 ... MySQL-Server unter Linux installieren ... 677        A.6 ... Der Kommando-Client mysql ... 679        A.7 ... Die MySQL-Shell mysqlsh ... 683        A.8 ... Beispieldatenbanken lokal installieren ... 685        A.9 ... Server-Konfiguration für den Unterricht ... 686   B.  Lösungen ... 691        B.1 ... Kapitel 2: »Grundlagen relationaler Datenbanken« ... 691        B.2 ... Kapitel 3: »Datenbankmodellierung« ... 699        B.3 ... Kapitel 4: »Datentypen« ... 711        B.4 ... Kapitel 5: »Primary Keys, Foreign Keys und referenzielle Integrität« ... 714        B.5 ... Kapitel 6: »Indizes« ... 720        B.6 ... Kapitel 7: »Physische Modellierung« ... 726        B.7 ... Kapitel 8: »Modellierungsbeispiele« ... 729        B.8 ... Kapitel 9: »Relationale Algebra und SQL« ... 738        B.9 ... Kapitel 10: »Daten abfragen (SELECT)« ... 741        B.10 ... Kapitel 11: »Daten ändern (INSERT, UPDATE, DELETE)« ... 747        B.11 ... Kapitel 12: »Transaktionen« ... 750        B.12 ... Kapitel 13: »Subqueries, Rekursion, Zusatzfunktionen« ... 753        B.13 ... Kapitel 14: »Volltextsuche, geografische Daten, XML und JSON« ... 759        B.14 ... Kapitel 20: »Von relationalen Datenbanken zu NoSQL« ... 760   Index ... 769

Artikel-Details

Anbieter:
Rheinwerk Verlag
Autor:
Michael Kofler
Artikelnummer:
9783367100170
Veröffentlicht:
05.03.24
Seitenanzahl:
782