Fr. 65.00

Datenbanksysteme - Das umfassende Lehrbuch für Ausbildung, Beruf und Studium - Auflage 2024

Deutsch · Fester Einband

Versand in der Regel in 1 bis 3 Arbeitstagen

Beschreibung

Mehr lesen

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

Inhaltsverzeichnis


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

Über den Autor / die Autorin

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 und
arbeitet als Lehrbeauftragter.

Zusammenfassung

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

Zusatztext

»Das wirklich ganz herausragende Buch zur Erstellung, Verwaltung und Administration von Datenbanken ist sehr gut geeignet für Vorlesung, Tutorium und Praxis.«

Bericht

»Das wirklich ganz herausragende Buch zur Erstellung, Verwaltung und Administration von Datenbanken ist sehr gut geeignet für Vorlesung, Tutorium und Praxis.« Ahadesign.eu 202403

Produktdetails

Autoren Michael Kofler
Verlag Rheinwerk Verlag
 
Sprache Deutsch
Produktform Fester Einband
Erschienen 05.03.2024
 
EAN 9783367100156
ISBN 978-3-367-10015-6
Seiten 782
Abmessung 178 mm x 47 mm x 245 mm
Gewicht 1559 g
Themen Naturwissenschaften, Medizin, Informatik, Technik > Informatik, EDV > Programmiersprachen

Data Science, relationale Datenbanken, sql, NoSQL, Datenbanksystem, acid, Datenbank-Entwicklung, Kofler, Datenbank-Administration, MySQL, Postgresql, Mariadb, Ausbildung Studium Beruf, DBS Software, Aufbau Datenbanken

Kundenrezensionen

Zu diesem Artikel wurden noch keine Rezensionen verfasst. Schreibe die erste Bewertung und sei anderen Benutzern bei der Kaufentscheidung behilflich.

Schreibe eine Rezension

Top oder Flop? Schreibe deine eigene Rezension.

Für Mitteilungen an CeDe.ch kannst du das Kontaktformular benutzen.

Die mit * markierten Eingabefelder müssen zwingend ausgefüllt werden.

Mit dem Absenden dieses Formulars erklärst du dich mit unseren Datenschutzbestimmungen einverstanden.