PORTO-
FREI

Kofler, M: Datenbanksysteme

Das umfassende Lehrbuch für Ausbildung, Beruf und Studium

von Kofler, Michael   (Autor)

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. 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: * Grundlagen und Begriffe * Datenbankmodellierung: vom ER-Modell zum perfekten Schema * Datentypen * Primary Keys, Foreign Keys und referenzielle Integrität * Indizes * SQL: Daten 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 *

Buch (Gebunden)

EUR 49,90

Alle Preisangaben inkl. MwSt.

Auch verfügbar als:

  nicht lieferbar.
(vergriffen - Erscheinungstermin einer Neuauflage unbestimmt.)

Versandkostenfrei*

Dieser Artikel kann nicht bestellt werden.
 

Produktbeschreibung

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. 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:

* Grundlagen und Begriffe

* Datenbankmodellierung: vom ER-Modell zum perfekten Schema

* Datentypen

* Primary Keys, Foreign Keys und referenzielle Integrität

* Indizes

* SQL: Daten 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

Inhaltsverzeichnis

Materialien zum Buch ... 11




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





2. Grundlagen relationaler Datenbanken ... 45



2.1 ... Datenbank versus Datenbankmanagementsystem ... 45


2.2 ... Das relationale Modell ... 54


2.3 ... Transaktionen ... 63


2.4 ... Datensicherheit und ACID ... 66


2.5 ... Codds zwölf Gebote ... 76


2.6 ... Kritik am relationalen Modell ... 79


2.7 ... Wiederholungsfragen ... 84





3. Von relationalen Datenbanken zu NoSQL ... 89



3.1 ... Verteilte Datenbankmanagementsysteme ... 91


3.2 ... Objektorientierte Datenbanken ... 99


3.3 ... Online Analytical Processing (OLAP) ... 105


3.4 ... NoSQL ... 113


3.5 ... Wiederholungsfragen ... 128







TEIL II Datenbanken modellieren ... 131





4. Datenbankmodellierung ... 133



4.1 ... Datenbankschema ... 134


4.2 ... Modellierungsstufen ... 136


4.3 ... Modellierungstechniken ... 140


4.4 ... Das Entity-Relationship-Modell ... 144


4.5 ... Sonderfälle im ER-Modell ... 150


4.6 ... Alternative Diagrammformen und Notationen (IDEF1X, Min-Max, UML) ... 158


4.7 ... Vom ER-Diagramm zum Tabellenschema ... 168


4.8 ... Namensregeln ... 176


4.9 ... Normalformen ... 178


4.10 ... Normalisierungsbeispiel ... 190


4.11 ... Modellierung hierarchischer bzw. unstrukturierter Daten ... 193


4.12 ... Wiederholungsfragen ... 200





5. Datentypen ... 205



5.1 ... SQL und das Kommando »CREATE TABLE« ... 205


5.2 ... Ganze Zahlen ... 208


5.3 ... Gleit- und Festkommazahlen ... 210


5.4 ... Zeichenketten ... 214


5.5 ... Datum und Uhrzeit ... 218


5.6 ... Boolesche Zustände ... 220


5.7 ... Binäre Daten (BLOBs) ... 220


5.8 ... NULL, Defaultwerte und Werteinschränkungen (CHECKs) ... 223


5.9 ... Besondere Datentypen ... 226


5.10 ... Virtuelle Spalten (Generated Columns) ... 231


5.11 ... Beispiele ... 231


5.12 ... Wiederholungsfragen ... 234





6. Primary Keys, Foreign Keys und referenzielle Integrität ... 235



6.1 ... Primary Key (Primärschlüssel) ... 236


6.2 ... Foreign Keys (Fremdschlüssel) ... 248


6.3 ... Foreign-Key-Beispiele ... 256


6.4 ... Wiederholungsfragen ... 263





7. Indizes ... 265



7.1 ... Indexformen ... 266


7.2 ... Index-Interna und B-Trees ... 272


7.3 ... Indizes -- Pro und Kontra ... 286


7.4 ... Cache-Systeme für Abfragen ... 289


7.5 ... Wiederholungsfragen ... 291





8. Physische Modellierung ... 295



8.1 ... DBMS-Auswahl ... 295


8.2 ... Dimensionierung von Datenbanken ... 300


8.3 ... Views ... 304


8.4 ... Partitionen ... 311


8.5 ... Wiederholungsfragen ... 316





9. Modellierungsbeispiele ... 319



9.1 ... »books«-Datenbank ... 320


9.2 ... »todo«-Datenbank ... 322


9.3 ... »school«-Datenbank ... 331


9.4 ... »clouddb«-Datenbank ... 342


9.5 ... »sakila«-Datenbank ... 353


9.6 ... »employees«-Datenbank ... 359


9.7 ... Noch mehr Musterdatenbanken ... 362


9.8 ... Wiederholungsfragen ... 363







TEIL III Structured Query Language (SQL) ... 367





10. Relationale Algebra ... 369



10.1 ... Relationale Algebra ... 370


10.2 ... Relationenkalkül (relationaler Calculus) ... 380


10.3 ... Structured Query Language (SQL) ... 385


10.4 ... Elementare SQL-Syntaxregeln ... 390


10.5 ... Wiederholungsaufgaben ... 392





11. Daten abfragen (SELECT) ... 393



11.1 ... Zugriff auf die Beispieldatenbanken ... 393


11.2 ... Einfache Abfragen (WHERE, DISTINCT) ... 396


11.3 ... Tabellen verknüpfen (JOIN) ... 401


11.4 ... Ergebnisse gruppieren (GROUP BY) ... 412


11.5 ... Ergebnisse sortieren (ORDER BY) ... 417


11.6 ... Ergebnisse limitieren (LIMIT) ... 418


11.7 ... SELECT-Syntax-Zusammenfassung ... 420


11.8 ... Der Umgang mit NULL ... 420


11.9 ... Abfragen kombinieren (UNION) ... 423


11.10 ... Abfrageausführung und -optimierung ... 424


11.11 ... Wiederholungsaufgaben ... 435





12. Daten ändern (INSERT, UPDATE, DELETE) ... 437



12.1 ... Daten einfügen (INSERT) ... 437


12.2 ... Daten ändern (UPDATE) ... 443


12.3 ... Daten löschen (DELETE) ... 445


12.4 ... Wiederholungsaufgaben ... 448





13. Transaktionen ... 451



13.1 ... Transaktionen ... 452


13.2 ... Isolation Level ... 455


13.3 ... Dirty Read, Phantom Read und andere Isolation-Probleme ... 461


13.4 ... Locking-Verfahren ... 472


13.5 ... Multiversion Concurrency Control (MVCC) ... 479


13.6 ... Wiederholungsaufgaben ... 484





14. Subqueries, Rekursion, Zusatzfunktionen ... 487



14.1 ... SQL-Funktionen ... 487


14.2 ... Subqueries ... 494


14.3 ... Window-Funktionen (OVER) ... 500


14.4 ... Rekursion ... 503


14.5 ... Data Definition Language (DDL) ... 509


14.6 ... Systemkatalog ... 514


14.7 ... Wiederholungsaufgaben ... 519





15. Volltextsuche, geografische Daten, XML und JSON ... 521



15.1 ... Volltextindex und Volltextsuche ... 521


15.2 ... Geografische Daten (GIS-Funktionen) ... 526


15.3 ... XML ... 532


15.4 ... JSON ... 538


15.5 ... Wiederholungsaufgaben ... 541







TEIL IV Administration und Programmierung ... 543





16. Benutzerverwaltung ... 545



16.1 ... Authentifizierung ... 546


16.2 ... Privilegien und Rollen ... 548


16.3 ... Administration der Benutzerrechte (DCL) ... 552


16.4 ... Ein Blick hinter die Kulissen ... 558


16.5 ... Server-Konfiguration und -Absicherung ... 560





17. Logging und Backups ... 565



17.1 ... Logging ... 565


17.2 ... Backups ... 569


17.3 ... Import und Export ... 577





18. Replikation und High Availability ... 581



18.1 ... Replikation ... 581


18.2 ... Replikations-Setup in MySQL ... 588


18.3 ... High Availability ... 592





19. Stored Procedures und Trigger ... 593



19.1 ... Programmierung auf DBMS-Ebene versus Client-Code ... 593


19.2 ... Hello, Stored Procedure! ... 596


19.3 ... Stored Procedures und Funktionen ... 601


19.4 ... Fehlerabsicherung und Cursor ... 609


19.5 ... Administration und Sicherheit ... 613


19.6 ... Trigger ... 615





20. Client-Programmierung ... 617



20.1 ... Konzepte der Client-Programmierung ... 617


20.2 ... Beispiel 1: Java und JDBC ... 622


20.3 ... Beispiel 2: Kotlin und Exposed ... 626





A. MySQL installieren und einrichten ... 633



A.1 ... MySQL Workbench ... 634


A.2 ... Onlinezugriff auf die Beispieldatenbanken ... 636


A.3 ... MySQL-Server unter Windows installieren ... 637


A.4 ... MySQL-Server unter macOS installieren ... 640


A.5 ... MySQL-Server unter Linux installieren ... 641


A.6 ... Der Kommando-Client mysql ... 643


A.7 ... Die MySQL-Shell mysqlsh ... 647


A.8 ... Beispieldatenbanken lokal installieren ... 649


A.9 ... Server-Konfiguration für den Unterricht ... 650





B. Lösungen ... 655



B.1 ... Kapitel 2: »Grundlagen relationaler Datenbanken« ... 655


B.2 ... Kapitel 3: »Von relationalen Datenbanken zu NoSQL« ... 663


B.3 ... Kapitel 4: »Datenbankmodellierung« ... 670


B.4 ... Kapitel 5: »Datentypen« ... 682


B.5 ... Kapitel 6: »Primary Keys, Foreign Keys und referenzielle Integrität« ...
685


B.6 ... Kapitel 7: »Indizes« ... 691


B.7 ... Kapitel 8: »Physische Modellierung« ... 697


B.8 ... Kapitel 9: »Modellierungsbeispiele« ... 700


B.9 ... Kapitel 10: »Relationale Algebra und SQL« ... 710


B.10 ... Kapitel 11: »Daten abfragen (SELECT)« ... 712


B.11 ... Kapitel 12: »Daten ändern (INSERT, UPDATE, DELETE)« ... 719


B.12 ... Kapitel 13: »Transaktionen« ... 721


B.13 ... Kapitel 14: »Subqueries, Rekursion, Zusatzfunktionen« ... 725


B.14 ... Kapitel 15: »Volltextsuche, geografische Daten, XML und JSON« ... 730





Index ... 733 

Autoreninfo

Michael Kofler hat Telematik an der TU Graz studiert und ist einer der erfolgreichsten deutschsprachigen IT-Fachbuchautoren. Zu seinen Themengebieten zählen neben Linux auch IT-Sicherheit, Python, Swift, Java und der Raspberry Pi. Er ist Entwickler, berät Firmen undarbeitet als Lehrbeauftragter. 

Mehr vom Verlag:

Rheinwerk Verlag GmbH

Mehr aus der Reihe:

Rheinwerk Computing

Mehr vom Autor:

Kofler, Michael

Produktdetails

Medium: Buch
Format: Gebunden
Seiten: 746
Sprache: Deutsch
Erschienen: Juli 2022
Sonstiges: 459/08422
Maße: 246 x 175 mm
Gewicht: 1505 g
ISBN-10: 3836284227
ISBN-13: 9783836284226
Verlagsbestell-Nr.: 459/08422

Herstellerkennzeichnung

Rheinwerk Verlag GmbH
Rheinwerkallee 4
53227 Bonn
E-Mail: Info@rheinwerk-verlag.de

Bestell-Nr.: 32414687 
Libri-Verkaufsrang (LVR):
Libri-Relevanz: 8 (max 9.999)
Bestell-Nr. Verlag: 459/08422

Ist ein Paket? 1
Rohertrag: 11,66 €
Porto: 3,35 €
Deckungsbeitrag: 8,31 €

LIBRI: 0000000
LIBRI-EK*: 34.98 € (25%)
LIBRI-VK: 49,90 €
Libri-STOCK: 0
LIBRI: 044 Vergriffen - Erscheinungstermin NA unbestimmt * EK = ohne MwSt.

UVP: 0 
Warengruppe: 16330 

KNO: 95549114
KNO-EK*: 34.98 € (25%)
KNO-VK: 49,90 €
KNO-STOCK: 0
KNO-MS: 07

KNOABBVERMERK: 2022. 746 S. 24 cm
KNOSONSTTEXT: 459/08422
Einband: Gebunden
Sprache: Deutsch

Alle Preise inkl. MwSt. , innerhalb Deutschlands liefern wir immer versandkostenfrei . Informationen zum Versand ins Ausland .

Kostenloser Versand *

innerhalb eines Werktages

OHNE RISIKO

30 Tage Rückgaberecht

Käuferschutz

mit Geld-Zurück-Garantie