View Updating and Relational Theory (2012), C. J. Date, O'Reilly

Minimize

 

Chris Date is an undoubted authority within the database industry. The author of "An Introduction to Database Systems (Addison Wesley)". C.J. Date is a very focused and clear-thinking writer with passion for relational database theory,  still presented in a way to be easily understood by his audience.

The book start with a solid (and very carefully) defined base on the definition of databases artefacts and their interdependencies in the context of view-updating. He describes views as virtual tables. With the consequence that they should be updateable, just the way "real" tables are.

Beside the widespread reasonable doubt, this book describes how views can always be updated (just like tables) as long as a set of integrity constraints is respected. Following the proposed scheme updating is possible and fully consistent with the relational model.

 

The book uses simple and clear motivating examples and describes the challanges on view-updating with a very formal but still clearly readable language. It proves the updatablity of the complete range of relational modelling (not only for simple projections but also for joins, groups, expressions, etc.). This topic by topic organisation of the book, combined with the formal but clear language offers the reader a complete perspective to the complex challange of views as virtual tables with all it´s consequences.

 

This book is writen for people with strong intereset in the relational model and  relational technology with passion for relational theory.


(Reinhard Kronsteiner, March 18th 2013)


 View Updating and Relational Theory (2012), C. J. Date, O'Reilly

SQL And Relational Theory. How to write Accurate SQL Code. (2011) C. J. Date. O’Reilly. 2. Auflage

Minimize

Der Name lässt es ja durchklingen: Hier geht’s nicht vordergründig um schnelle praktische Tipps beim Schreiben von SQL Code, sondern um tiefgreifende theoretische Konzepte, die akademisch angelegt erläutert werden. Date warnt gleich im ersten Kapital, dass die relationale Theorie in den erhältlichen relationalen Datenbanken nur unzureichend oder sogar falsch umgesetzt ist. Um also die Theorie wirklich zu verstehen, muss wahrscheinlich ein „Unlearning“ dieser impliziten Konzepte stattfinden, die wir aus unserer täglichen Arbeit mit zB. SQL Server kennen.

So musste ich neu lernen, dass Listen mit Spalten und Zeilen Relationen heißen (und nicht Tabellen), dass die im Buch dargestellten Relationen gar keine Relationen sind, sondern nur Repräsentationen von Relationen sind und eine SQL-Tabelle konzeptionell weder eine Relation noch eine Tabelle sondern eigentlich eine Variable ist, die eine Relation enthält. Date ist es also Ernst mit dem Thema und er zieht das auch konsequent im Buch auf über 400 Seiten durch.

Bei mir sträubte sich immer wieder der Wille das Gelesene hinzunehmen, weil der Stil manchmal auch provokant ist. Date schafft es aber in seinen Ausführungen auch die Gegenargument darzubringen und gleichzeitig zu widerlegen, sodass ich letztendlich seinen Standpunkt akzeptierte.

Die Theorie wird anhand von in einer von ihm gemeinsam mit Hugh Darwen entwickelten Pseude-Sprache namens „Tutorial D“ erläutert. In vielen Beispielen findet sich aber auch der entsprechende Pendant in SQL wieder.

Jedes Kapital wird mit Übungsaufgaben abgeschlossen, deren Lösung am Ende des Buches aufgezeigt wird.

Besonders gelungen fand ich die Kapiteln über Duplikate und Nullwerte. Beides versuche ich in meinen Projekten zu meiden, wie der Teufel das Weihwasser. Date zeigt umfassend in Überlegungen und konkreten Beispielen warum es besser wäre, wenn beides in SQL gleich gar nicht vorgesehen wäre.

Wer schon einige Erfahrungen mit SQL gesammelt hat und sich mal ein wenig mit Abstand mit den dahinterliegenden Konzepten beschäftigen will, dem sei das Buch wärmstens empfohlen.

 

(Markus Ehrenmüller-Jensen, 27. Februar 2013)

SQL And Relational Theory. How to write Accurate SQL Code. (2011) C. J. Date. O’Reilly. 2. Auflage