Rating:  Summary: Epiphany Anyone? Review: Bravo Zulu (well done) to Mr. Pascal. Very respectful to the reader, just as the title implies. Wonderful, delightful reading, amazingly engaging style. If you choose to engage, you will benefit beyond belief. I would buy this book for you if I could. Choose not to engage then you may write a bad review, but you still get the benefit of exposure to it. Given current situation, that exposure is still a step in the right direction. Scarce publication on this subject matter makes it worth it's weight in gold. This is not a "book for dummies" rather a book for smart folk. New words and ideas are introduced to help us understand old concepts. This book is a call for action for our discipline, a challenge for those of us dedicated to make a difference in this world. The revolution is based on this discipline, pay homage to it.
Rating:  Summary: Thought provoking discussions on vital database concepts Review: Contains discussions on widely misunderstood, but vitally important, database issues. Considers how things should be according to relational theory, what goes wrong in practice due to failing to understand these fundamental concepts, and provides practical recommendations/workarounds where possible. A bridge between theory and practice. A concise and straightforward read, although to gain maximum benefit you should already have a reasonable understanding of relational databases.Some of the main points are as follows. Relational databases can support data types of arbitrary complexity ("objects") - but we need DBMS vendors to implement the means to provide such support. Use declarative integrity constraints when possible. Avoid tables that allow duplicate rows - ensure all tables have a primary key (may require a surrogate key). Avoid redundant data. Ensure your database is normalized - avoids numerous problems. Resist the temptation to denormalize. Recognise entity supertypes/subtypes and how to implement as tables. Minimize use of nulls whenever possible. Also discusses climbing trees and quota queries. Separate chapters discuss all these points in detail. A constant theme throughout the book is how poorly SQL and commercial DBMSs support relational concepts, and the numerous problems this causes. Personally, I believe there is little that most application/database developers can do about this, other than suffer what gets "inflicted" upon us. Pascal urges us to pressurise DBMS vendors to provide better relational support. This book is firmly of the view that "relational is right". If you agree, you will probably like this book. Most of the references are to C.J Date's writings. However, I suspect some people won't like this book - those who believe "relational is wrong" (e.g. some OODBMS proponents); and those who prefer a "cookbook approach" for their specific DBMS and don't really care about what the "right way" is. I suspect some people will think that Pascal should "live in the real world" rather than worrying about theory, yet this book argues that it is because of the failure to understand fundamental database concepts that leads to "real world" databases having the problems that they do. Helps database professionals educate themselves in fundamental database concepts, and illustrates the correct way of doing things in relational databases. Well worth reading.
Rating:  Summary: Could be better, but not much Review: Ever wondered why is it so difficult to put rich data into the relational model, or why so much of database logic keeps being badly manipulated by application programs instead of by DBMS? Ever felt SQL was too verbose, or complex, or illogical, and simply arbitrarily limited? Mr Pascal helps us organise our grips against current DBMSs and hope for a better future. This book analyses common database problems every professional with more than a few months in the field has already faced, and relentlessly trace them to failures in SQL implementations or in the SQL language itself. A real mind-opener in the current state of the field, where from press to shop everything is dominated by vendors but few true critics survive.
Rating:  Summary: Could be better, but not much Review: Ever wondered why is it so difficult to put rich data into the relational model, or why so much of database logic keeps being badly manipulated by application programs instead of by DBMS? Ever felt SQL was too verbose, or complex, or illogical, and simply arbitrarily limited? Mr Pascal helps us organise our grips against current DBMSs and hope for a better future. This book analyses common database problems every professional with more than a few months in the field has already faced, and relentlessly trace them to failures in SQL implementations or in the SQL language itself. A real mind-opener in the current state of the field, where from press to shop everything is dominated by vendors but few true critics survive.
Rating:  Summary: Once again, thanks! Review: Fabian has outdone himself. This is his best book yet! And I have been a BIG fan of his earlier books for many years now. As others have pointed out here already, learning and thinking in terms of the fundamental principles of database management makes one an extremely effective practitioner. Many, who think they already have a firm grasp of database management, will find Fabian's work surprizingly eye-opening and mind expanding -- like discovering a door that opens onto a hidden world that has been there all along! I cannot recommend this book enough. I consider it mandatory reading for every programmer and database practitioner.
Rating:  Summary: On the money... Review: Fabian is on the money. Jeff Unsel (above), you're a perfect example of the problem. Get out of IT and try selling cars or something.
Rating:  Summary: On the money... Review: Fabian is on the money. Jeff Unsel (above), you're a perfect example of the problem. Get out of IT and try selling cars or something.
Rating:  Summary: Understanding Relational Databases, once again Review: Giving this book only 2 starts only because of its title. It is not what it claims to be. This book title should be "Understanding Relational Databases, once again" (borrowed from 1st book by Fabian). It is not for experienced database professionals by any means. In case you have never heard of normalization or relational algebra this book will help you to avoid many mistakes with database design. The relational principles are practical. No argument there. But in real world there are other issues like available RDBMS features, performance, deadlines. It is not a problem that this book does not address them as its scope is different. The problem that it mentions these issues as something having less importance comparing to relational theory guidelines. Following this approach can ruin your design as surely as violating normalization principles. In case you have already had an understanding of relational theory this book is waste of money. Samples are oversimplified. Try to implement supertype-subtype sample with the inheritance level about 5 and see how your design will perform. Many very useful designs are simply not mentioned. For example only "explosion" design is considered for tree implementation.
Rating:  Summary: Understanding Relational Databases, once again Review: Giving this book only 2 starts only because of its title. It is not what it claims to be. This book title should be "Understanding Relational Databases, once again" (borrowed from 1st book by Fabian). It is not for experienced database professionals by any means. In case you have never heard of normalization or relational algebra this book will help you to avoid many mistakes with database design. The relational principles are practical. No argument there. But in real world there are other issues like available RDBMS features, performance, deadlines. It is not a problem that this book does not address them as its scope is different. The problem that it mentions these issues as something having less importance comparing to relational theory guidelines. Following this approach can ruin your design as surely as violating normalization principles. In case you have already had an understanding of relational theory this book is waste of money. Samples are oversimplified. Try to implement supertype-subtype sample with the inheritance level about 5 and see how your design will perform. Many very useful designs are simply not mentioned. For example only "explosion" design is considered for tree implementation.
Rating:  Summary: Its content exactly matches its title. Review: I am a software developer with an overall understanding of database systems. I bought this book to get more familiar about practical issues. I believe the book rightly points to them and explains them in a very lively fashion. I really like it.
|