Buchbesprechung: SQL – der Grundkurs für Ausbildung und Praxis

Die Einführung in die Datenbankabfragesprache widmet sich nicht nur dem SQL-Standard, sondern rückt auch die Unterschiede der verschiedenen Server in den Fokus.

In Pocket speichern vorlesen Druckansicht 59 Kommentare lesen
Buchbesprechung: SQL – der Grundkurs für Ausbildung und Praxis

(Bild: vchal/Shutterstock.com)

Lesezeit: 5 Min.
Von
  • Annette Bosbach
Inhaltsverzeichnis

Ralf Adams
SQL – der Grundkurs für Ausbildung und Praxis
Mit Beispielen in MySQL/MariaDB, PostgreSQL und T-SQL
Hanser, 4., aktualisierte Auflage, Oktober 2021
637 Seiten, 29,99 € (Buch, eBook)
ISBN: 978-3-446-47168-9

Die Zeit, als man sich SQL-Know-how im Rahmen eines Buchs unter dem Motto "Wir lernen DBMS in 14 Tagen" aneignen konnte, ist lange vorbei. Spätestens seit MariaDB als Fork aus MySQL hervorgegangen ist, gilt SQL als eine komplizierte Wissenschaft – insbesondere unter Berücksichtigung der verschiedenen Datenbank-Engines. Mit "SQL – der Grundkurs für Ausbildung und Praxis" verlegt Hanser einen Evergreen zur Einführung in die Structured Query Language für Datenbankoperationen, der nun in 4. Auflage aktualisiert vorliegt.

Adams beginnt sein Werk mit einer umfangreichen Erklärung der Theorie relationaler Datenbanksysteme. Die Überlegungen zu Verknüpfungen, Normalformen und der insbesondere unter Quereinsteigern gefürchteten referenziellen Integrität gelingen nach Meinung der Rezensentin gut: nach dem Durchlesen der ersten 40 Seiten dürfte sich jeder Leser und jede Leserin einen Grundstock des Datenbankwissens angesammelt haben, mit dem sich zur Vertiefung des Wissens gezielt in weiterer Literatur stöbern lässt.

Schon auf dem Cover verspricht das Werk, mehrere Engines zu behandeln. Dieser Anspruch zeigt sich beispielsweise im Bereich des Kapitels, das die Installation der verschiedenen Datenbankserver erklärt: MySQL und MariaDB werden ausschließlich unter Windows 10 besprochen, die Installation für andere Betriebssysteme beschränkt sich auf die Darstellung der Ausführung in Docker. Sowohl PostgreSQL als auch Microsofts SQL-Server müssen sich dabei übrigens mit einer "Behandlung zweiter Klasse" zufriedengeben.

Die eigentliche Erklärung von SQL erfolgt ohne große didaktische Experimente. Nach dem Anlegen der Tabellen versieht Adams diese mit Indizes und Werten, die er im nächsten Schritt verändert und zu guter Letzt für Auswertungs- beziehungsweise Berechnungsoperationen heranzieht.

Lobenswert ist, dass Adams schon bei den Grundlagen auf die Besonderheiten der verschiedenen Datenbankserver eingeht. Für so gut wie alle Statements zeigt er nicht nur die in SQL 2016 vorgegebene kanonische Variante des jeweiligen Befehls, sondern erklärt auch, wie sich die einzelnen Datenbanken im Bereich der Implementierung der jeweiligen Befehle voneinander unterscheiden. Adams beweist dabei Mut zum Tiefgang. So fallen unter anderem die Erklärungen zu den Unterschieden zwischen den SQL-Zahlentypen Decimal und Float detailliert aus und zeigen anhand praktischer Beispiele die Unterschiede zwischen den Repräsentationsformaten.

(Bild: Hanser)

Diese Vorgehensweise setzt der Autor konsequent auch im Kapitel zu den Auswertung fort: neben Überlegungen zur direkten Nutzung des SQL-Kommandozeilenclients erklärt Adams, wie man die von den Queries zurückgelieferten Informationen als Dateien auf dem Server ablegt und sie mittels eines in C# geschriebenen Clients in Binärform zur programmatischen Weiterverarbeitung entgegennimmt.

Zukunftsweisend gibt sich das Buch, wenn Adams neben kombinatorischen Anfragen wie den auf der Mengenlehre basierenden Mengen-Operationen auch auf Grundlagen von NoSQL eingeht. Dabei beschränkt er sich allerdings darauf, zu zeigen, wie man Anfragen ins JSON-Format exportiert.

Spätestens die Einführung von Transaktionen und Sharding haben der einst eher simplen Datenbankabfragesprache immer kompliziertere Funktionen beschert. Adams zeigt auch an dieser Stelle erneut Mut zur Tiefe: neben Überlegungen zu Stored Procedures und zu Triggern sowie zur Benutzerverwaltung erklärt er auch, wie Computerkriminelle Datenbanken über SQL-Injections angreifen – und wie sich derartige Attacken abwehren lassen.

Zum Abschluss finden Leserinnen und Leser noch eine umfangreiche Referenz der SQL-Sprache, ergänzt durch ausgewählte Quelltexte und Lösungen für die quer über sämtliche Buchkapitel verteilten Aufgaben.

Dass der Hanser-Verlag "SQL – der Grundkurs für Ausbildung und Praxis" nun bereits in der vierten Auflage aktualisiert hat, zeigt nach Einschätzung der Rezensentin vor allem eines: Ralf Adams ist eine Mischung aus Einführung in die Structured Query Language und Tiefgang in wichtige Aspekte der Abfragesprache geglückt. Er beschreibt einerseits den kompletten SQL-Sprachstandard, vergisst aber andererseits nicht darauf einzugehen, wie sich die verschiedenen SQL-Server verhalten.

Insbesondere das Zusammenspiel der Erklärungen mit den treffend über die Kapitel verteilten – und teilweise kniffligen – Aufgaben macht das Werk zu einem empfehlenswerten Lehrbuch, das keinem Datenbanknutzenden fehlen sollte. Dank des umfangreichen Index eignet es sich auch als Nachschlagewerk für die Praxis. Allein die Tatsache, dass sich Adams ein wenig zu sehr auf die MySQL-Welt beschränkt, erscheint bedauerlich – angesichts des Umfangs von über 600 Seiten für ein auf die Einführung fokussiertes Buch, aber durchaus nachvollziehbar.

Annette Bosbach
betreut die Legacysysteme der Tamoggemon Holding k.s. und befasst sich darüber hinaus seit Jahren mit dem Einfluss, den Technik und Menschen aufeinander nehmen.

(map)