The newest edition of the classic An Introduction to Database Systems incorporates the latest developments in relational databases, including semantic modeling, decision support, and temporal modeling. There's better information on distributed databases, security, and the mathematics of relational databases too. With the same strong coverage of fundamental theory that made its predecessors stand out, this book ranks as the definitive textbook for those studying database systems. This is an extraordinarily academic book. In his preface, C.J. Date goes so far as to lament having to use Structured Query Language (SQL) in some of his examples because it's "so far from being a true embodiment of relational principles." What's more, he writes in a very academic style, peppering his heavily footnoted prose with mathematical expressions and words like relevar and tuple. The academic style and highbrow language isn't a bad thing, since this book deals with complicated, largely abstract phenomena in depth. Be aware that An Introduction to Database Systems is a far cry from the highly graphical, problem-focused books that target the community of commercial database developers, and as such requires more careful study. This book is about theories, concepts, and ideals rather than problems, solutions, and specific implementations. Per se, it will enable you to become a better database programmer--but only if you supplement it with practical guides and hands-on experience.
Christopher J. Date (born 1941) is an independent author, lecturer, researcher, and consultant, specializing in relational database theory. —from wikipedia
Really enjoyed it, it was surprisingly easy to read. Explained all the rules and principles well. I was thinking about our production code all the time while reading it.
Date's seminal work is critical to understanding databases - a step mostly forgotten by those who believe every concept can be taught using commercial products with brain-dead examples in under 24 hours. Date teaches the logic and theory that underlie all successful practice. You can probably buy a different book and create a mock database faster, but you will neither understand nor be able to use it well. Do yourself a favor and read this first to understand what a database is; only then can you judge the value of other books.
A rigorous, highly opinionated overview of database theory and some practice. Transaction management is only lightly covered but the sections on relational algebra/calculus and normalization make up for it.
A wonderful book from an academic point of view. It is mostly easy to read, yet it provides a solid knowledge about the theory that is behind relational databases. The book's approach is progressive: first it explains things in a more understandable way and then, when the reader has enough information, it proceeds to more formally correct explanations.
Unfortunately, the author's approach is a bit too theory-centric. He strongly criticises "inconsistencies" between the math and existing systems. This is a point of views that must be respected of course, but sometimes he doesn't see that these inconsistencies make them fast and able to scale as required by modern workloads.
This book is very comprehensive and theoretical description of relational databases, but this is it's bad side. High theoretical level and lack of real-world examples can't make it, for example, be recommended as an introduction as said in it's title
Definitely comprehensive. I find it an amusing indictment of the industry (though not of this book) that SQL doesn't implement the relational model, and the relational DBMSs don't implement standard SQL.
Wonderful book. This book significantly improved my database skills when I was starting out as a relatively new programmer. (New meaning Delphi programmer, who finally earned access to full data rights to our Oracle databases.)