For database systems courses in Computer ScienceThis book introduces the fundamental concepts necessary for designing, using, and implementing database systems and database applications. Our presentation stresses the fundamentals of database modeling and design, the languages and models provided by the database management systems, and database system implementation techniques.
The book is meant to be used as a textbook for a one- or two-semester course in database systems at the junior, senior, or graduate level, and as a reference book. The goal is to provide an in-depth and up-to-date presentation of the most important aspects of database systems and applications, and related technologies. It is assumed that readers are familiar with elementary programming and data-structuring concepts and that they have had some exposure to the basics of computer organization.
Dr. Elmasri is Professor of Computer Science and Engineering at The University of Texas at Arlington. Dr. Elmasri received his B.S. in Electrical Engineering from Alexandria University, Egypt, in 1972. He completed his M.S. and Ph.D. degrees in Computer Science at Stanford University in 1980.
Love when textbooks have a nice acyclic graph in the table of contents, showing you material dependencies between chapters. I was just interested in chapter 5, 8, 14, 15 on relational model, relational algebra, functional dependency, and the tests for various normal forms.
The examples are pretty well chosen, with an important exception: the one for Boyce-Codd Normal Form (BCNF) in chapter 14 stipulates a functional dependency of "each instructor teaches one course." Now, you can see where this is going and may be tempted to wave my gripe away. The real-world semantics and plausibility are not essential? Wrong! That is the ONLY essential thing about the choice of example. Choose a familiar scenario from life with easily-appreciated functional dependencies that jibe with the reader's sense of how facts about those scenario are best organized. Total failure! The preferred choice of three possible decompositions of those relations hinges on that functional dependency, so the whole example deprives the reader of the intuition and a mnemonic. It's an egregious howler of an error that the author tacitly acknowledges in a footnote (!) reminding the reader of the unrealistic functional dependency precisely because it's easily forgotten. This is the seventh edition so there is no excuse for this ill-chosen example and that footnote. I'm being harsh because this isn't a typo or a technical error; that footnote indicates a deep misconception about the goal of exposition via illustration.
Otherwise seems a good textbook, but I'm subtracting a star for that footnote.