Mittlerweile in 3. Auflage erscheint der Titel „Einführung in SQL | Daten erzeugen, bearbeiten und anfragen“ im Original von Alan Beaulieu, ins Deutsche übersetzt von Thomas Demmig bei O’Reilly.
Warum SQL?
Nicht nur bei komplexen Datenbanksystemen, sondern auch bei Anwendungen wie WordPress, TYPO3 oder Joomla oder anderen CMS werkelt im Hintergrund meist eine Datenbank, die mittels SQL-Statements bearbeitet oder angefragt werden kann. Dann ist es doch sehr hilfreich sich auch mit SQL auszukennen und entsprechende Syntax und Abfragen zu beherrschen. Der Umgang mit vielen Daten macht es einfach notwendig zumindest (auch) SQL zu beherrschen.
Hierzu wollen wir uns einmal diesen Titel von A. Beaulieu näher ansehen. Diesen Titel hat uns O’Reilly freundlicherweise für diese Rezension zur Verfügung gestellt.
Was ist SQL?
Wie bei jeder guten Einführung in ein neues Gebiet, befasst sich der Autor zu Beginn des Titels mit den Grundzügen und beleuchtet die Hintergründe mit einem Einführungskapitel zu Datenbanken und (My)SQL. Ebenso unverzichtbar und Standard sind nachvollziehbare Codebeispiele. Hierfür wurde die von Oracle zur Verfügung gestellte Sakila-Test-Datenbank verwendet. Details und Schritte zur Installation auf dem eigenen PC findet man zu Beginn der Einführung. Dann kann es auch gleich losgehen.
Struktur in Daten und im Buch
Wie bei jeder sauberen Datenbankarchitektur ist auch dieser Titel klar strukturiert und hilft dem Leser somit, sich von Anbeginn zu orientieren und zurecht zu finden. Der Autor beginnt nach der Einführung in den dann folgenden vier der insgesamt 18 Kapiteln die Grundlagen der SQL-Datenbankanweisungen zu vermitteln. Dabei stehen die wichtigsten Klauseln der select-Anweisungen im Mittelpunkt. Ab Kapitel 5 geht es dann aber ans Eingemachte um dann, wie der Autor so schön sagt, nachdem man das Buch und die Beispiele durchgearbeitet hat, auf dem besten Wege zum mit allen Wassern gewaschenen SQL-Guru zu werden.
Erstellen, Füllen, Abfragen und Filtern
Mit diesen essentiellen Schritten steigt man in die Grundlagen ein und bekommt einen guten Einblick in die SQL-Basics. Wie lege ich eine Datenbank an? Was versteht man dabei unter Tabellen und Daten. Für die ersten Gehversuche kann man seine eigene Datenbank von Grund auf selbst erstellen, eine eigene bereits bestehende Datenbank verwenden oder die Sakila-Beispielsdatenbank verwenden. Dies ist die Empfehlung, denn der Autor bezieht seine sämtlichen Ausführungen und Beispiele auf diese Datenbank. Diese kann man unter https://www.katacoda.com/mysql-dB-sandbox/scenarios/mysql-sandbox aufrufen. Man benötigt lediglich seinen eigenen Twitter, GitHub, LinkedIn, Google-Account oder man registriert sich eben bei Katacoda.
Durch klare Strukturen und der Kennzeichnung von Tipps, Vorschlägen oder allgemeinen Hinweisen kommt man gut durch die diese ersten Schritte mit den INSERT-, UPDATE-, DELETE-Anweisungen.
Den wohl wichtigsten und essentiellen SELECT-Anweisungen widmet der Autor ein eigenes Kapitel und erläutert die Datenbankabfragen grundlegend, dass einem das Auslesen, Verknüpfen, Filtern, Gruppieren und Sortieren der Daten bekannt wird. Detailliertes und vertieftes Auseinandersetzen mit diesen Anweisungen gibt es in den Kapitel 4 bis 10.
Filtern – Joins – Gruppieren
Die wichtigen Funktionen und Abfragen von Daten, ob einer einer Tabelle oder über mehrere Tabellen hinweg, sowie das Erzeugen, Bearbeiten und Konvertieren von Daten. Da es gerade bei diesem Thema keine allgemeingültigen Ausführungen gibt, sondern je nach Datenbankherstellern Unterschiede gibt, verweist der Autor die Unterschiede und auf bestehende Referenzen wie bspw. SQL in a Nutshell oder SQL – kurz & gut.
Am Ende der einzelnen Kapitel streut der Autor kleine und kurze Übungen ein, mit denen das jeweilige Kapitelthema, Gelesene und Gelernte abgefragt werden. Im Anhang B. finden sich dann sämtliche Lösung hierzu.
Mit den Kapiteln 10 und 11, den weiteren Möglichkeiten einzelne Tabellen mit outer join und cross join zu verbinden, respektive der Erklärung zur Bedienungslogik in Verbindung mit dem Case-Ausdruck endet der große und sehr ausführliche Teil – gut 2/3 des ganzen Buches – der Abfragen und der Umgang mit den Abfrageergebnissen, also einzelnen SQL-Anweisungen.
Weitere Details und die Kür
In den folgenden Kapiteln geht es etwas mehr ins „Eingemachte“. Der Autor entfernt sich für meinen Geschmack dann zunehmend von der Zielgruppe des SQL- Einsteigers. Es geht um Transaktionen, also über die üblichen „eindimensionalen“ SQL-Anweisungen hinausgehenden mehrdimensionalen Gruppen von mehreren Anweisungen.
Auch die Ausführungen zu Indizes und Constraints im Kapitel 13 oder auch Views und Metadaten sind wichtige Komponenten, die neben dem Umgang mit den Daten für die richtige Architektur und Struktur einer Datenbank relevant sind. Auch hierüber erfährt der Leser notwendige Details. Zuletzt erfindet man noch Interessantes zu analytischen Funktionen, zum Umgang mit großen Datenbanken und Big Data, sodass man in der gebotenen Kürze auch etwas zu anderen, nicht-relationalen Datenbanken erfährt.
Der Rabe und der Skorpion
Um auf wichtige Dinge hinzuweisen oder Tipps markiert der Autor mittels gut sichtbarer Einschübe und Markierung Textpassagen durch das Symbol eines Raben. Der Skorpion warnt vor SQL-Statements mit möglicherweise unerwünschten Folgen. Erfreulicherweise findet man mehr Raben als Skorpione in diesem Werk. Also mehr Tipps und Hinweise als unerwünschte Ergebnisse. Sehr schön!
Layout nicht immer ganz optimal
An manchen Stellen könnte Edie Textgestaltung verbessert werden, in dem die einzelnen Statements inkl. der Ausgabe in Tabellenform durch farbliche oder grauen Schattierungen unterlegt werden. Auf manchen Seiten verliert man sich etwas in einer grauen Textwüste und hat Schwierigkeiten zwischen Beschreibungen und „Code“ inkl. Ausgabe zu unterscheiden. Die alleinige Unterscheidung mittels andere Schrifttype reicht für unseren Geschmack nicht ganz. Auch über Blatt- und Seitenwechsel hinauslaufende wiedergegebenen Abfrage-Ergebnisse machen es nicht immer ganz einfach. Hier werden die Grenzen eines gedruckten Buches deutlich, umso erfreulicher sind die verfügbaren digitalen Ausgaben des Buches als PDF- und EPUB-Version.
Toller Titel zum Einstieg in ein spannendes Thema
Abschließend und als Fazit bleibt zusammenzufassend zu sagen, dass der Titel einen idealen Einstieg in das Thema SQL bietet. Man kann das Buch von Kapitel zu Kapitel durcharbeiten, aber auch auf Grund seiner übersichtlichen Struktur als Nachschlagewerk und Referenz verwenden. Leider verliert die Lesbarkeit trotz unterschiedlich gewählter Typografie etwas bei den Passagen, bei denen Ausführungen, Tabellen und Abfragen zusammenkommen. Das tut der Qualität und dem Nutzwert des Buches keinerlei Abbruch, sodass es an dieser Stelle bei der Empfehlung des Werkes bleibt.
Bibliographische Angaben:
Erscheinungsdatum: 30.01.2021
Seitenanzahl: 378
Verlag: O’Reilly
Auflage: 3. Auflage
Einband: Broschur
ISBN Print: 978-3-96009-154-7 (29,90 €)
ISBN Bundle: 978-3-96010-466-7 (34,90 €)
ISBN PDF: 978-3-96010-432-2 (23,99 €)
ISBN ePub: 978-3-96010-433-9
ISBN Mobi: 978-3-96010-434-6
Toller Einführungstitel in SQL zum Erzeugen, Bearbeiten und Abfragen von Daten.
Zusammenfassung
Der Titel führt leicht verständlich in das interessante und für viele Anwendungen relevante Thema SQL. Wir können das Buch für all diejenigen empfehlen, die in das Thema SQL einsteigen möchten und auch während der Arbeit mit SQL-Datenbanken eine nützliche Referenz suchen.