Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Database in Depth Dedication A Note Regarding Supplemental Files Foreword Preface
What Makes This Book Different? Further Preliminaries Conventions Used in This Book Using Code Examples Safari Enabled Comments and Questions Acknowledgments
One. Introduction
1.1. A Remark on Terminology 1.2. Principles, Not Products 1.3. A Review of the Original Model
1.3.1. Structural Features 1.3.2. Integrity Features 1.3.3. Manipulative Features 1.3.4. The Running Example
1.4. Model Versus Implementation 1.5. Properties of Relations 1.6. Relations Versus Relvars 1.7. Values Versus Variables 1.8. Summary 1.9. Exercises
1.9.1.
1.9.1.1. Exercise 1-1 1.9.1.2. Exercise 1-2 1.9.1.3. Exercise 1-3 1.9.1.4. Exercise 1-4 1.9.1.5. Exercise 1-5 1.9.1.6. Exercise 1-6 1.9.1.7. Exercise 1-7 1.9.1.8. Exercise 1-8 1.9.1.9. Exercise 1-9 1.9.1.10. Exercise 1-10 1.9.1.11. Exercise 1-11 1.9.1.12. Exercise 1-12 1.9.1.13. Exercise 1-13 1.9.1.14. Exercise 1-14 1.9.1.15. Exercise 1-15 1.9.1.16. Exercise 1-16 1.9.1.17. Exercise 1-17 1.9.1.18. Exercise 1-18
Two. Relations Versus Types
2.1. Domain-Constrained Comparisons 2.2. Data Value Atomicity 2.3. So What's a Type? 2.4. Scalar Versus Nonscalar Types 2.5. Summary 2.6. Exercises
2.6.1.
2.6.1.1. Exercise 2-1 2.6.1.2. Exercise 2-2 2.6.1.3. Exercise 2-3 2.6.1.4. Exercise 2-4 2.6.1.5. Exercise 2-5 2.6.1.6. Exercise 2-6 2.6.1.7. Exercise 2-7 2.6.1.8. Exercise 2-8 2.6.1.9. Exercise 2-9 2.6.1.10. Exercise 2-10 2.6.1.11. Exercise 2-11 2.6.1.12. Exercise 2-12 2.6.1.13. Exercise 2-13 2.6.1.14. Exercise 2-14 2.6.1.15. Exercise 2-15 2.6.1.16. Exercise 2-16 2.6.1.17. Exercise 2-17 2.6.1.18. Exercise 2-18 2.6.1.19. Exercise 2-19 2.6.1.20. Exercise 2-20 2.6.1.21. Exercise 2-21 2.6.1.22. Exercise 2-22 2.6.1.23. Exercise 2-23 2.6.1.24. Exercise 2-24
Three. Tuples and Relations
3.1. What's a Tuple? 3.2. Some Important Consequences 3.3. What's a Relation? 3.4. Further Important Consequences 3.5. Why Duplicate Tuples Are Prohibited 3.6. Why Nulls Are Prohibited 3.7. TABLE_DUM and TABLE_DEE 3.8. Summary 3.9. Exercises
3.9.1.
3.9.1.1. Exercise 3-1 3.9.1.2. Exercise 3-2 3.9.1.3. Exercise 3-3 3.9.1.4. Exercise 3-4 3.9.1.5. Exercise 3-5 3.9.1.6. Exercise 3-6 3.9.1.7. Exercise 3-7 3.9.1.8. Exercise 3-8 3.9.1.9. Exercise 3-9 3.9.1.10. Exercise 3-10 3.9.1.11. Exercise 3-11 3.9.1.12. Exercise 3-12 3.9.1.13. Exercise 3-13 3.9.1.14. Exercise 3-14 3.9.1.15. Exercise 3-15 3.9.1.16. Exercise 3-16 3.9.1.17. Exercise 3-17 3.9.1.18. Exercise 3-18 3.9.1.19. Exercise 3-19 3.9.1.20. Exercise 3-20 3.9.1.21. Exercise 3-21
Four. Relation Variables
4.1. Updating Is Set-at-a-Time 4.2. More on Candidate Keys 4.3. More on Foreign Keys 4.4. More on Views
4.4.1. View Retrievals 4.4.2. View Updates 4.4.3. Miscellaneous Points
4.5. Relvars and Predicates
4.5.1. Relational Expressions
4.6. More on Relations Versus Types 4.7. Summary 4.8. Exercises
4.8.1.
4.8.1.1. Exercise 4-1 4.8.1.2. Exercise 4-2 4.8.1.3. Exercise 4-3 4.8.1.4. Exercise 4-4 4.8.1.5. Exercise 4-5 4.8.1.6. Exercise 4-6 4.8.1.7. Exercise 4-7 4.8.1.8. Exercise 4-8 4.8.1.9. Exercise 4-9 4.8.1.10. Exercise 4-10 4.8.1.11. Exercise 4-11 4.8.1.12. Exercise 4-12 4.8.1.13. Exercise 4-13 4.8.1.14. Exercise 4-14 4.8.1.15. Exercise 4-15 4.8.1.16. Exercise 4-16 4.8.1.17. Exercise 4-17 4.8.1.18. Exercise 4-18 4.8.1.19. Exercise 4-19 4.8.1.20. Exercise 4-20 4.8.1.21. Exercise 4-21 4.8.1.22. Exercise 4-22 4.8.1.23. Exercise 4-23 4.8.1.24. Exercise 4-24 4.8.1.25. Exercise 4-25 4.8.1.26. Exercise 4-26 4.8.1.27. Exercise 4-27 4.8.1.28. Exercise 4-28 4.8.1.29. Exercise 4-29 4.8.1.30. Exercise 4-30
Five. Relational Algebra
5.1. More on Closure 5.2. The Original Operators
5.2.1. Restrict 5.2.2. Project 5.2.3. Join 5.2.4. Intersect 5.2.5. Union 5.2.6. Difference 5.2.7. Cartesian Product 5.2.8. Divide 5.2.9. Which Operators Are Primitive?
5.3. Evaluating SQL Expressions 5.4. Extend and Summarize
5.4.1. Extend 5.4.2. Summarize
5.5. Group and Ungroup 5.6. Expression Transformation 5.7. Relational Comparisons 5.8. More on Relational Assignment 5.9. The ORDER BY Operator 5.10. Summary 5.11. Exercises
5.11.1.
5.11.1.1. Exercise 5-1. 5.11.1.2. Exercise 5-2. 5.11.1.3. Exercise 5-3. 5.11.1.4. Exercise 5-4. 5.11.1.5. Exercise 5-5. 5.11.1.6. Exercise 5-6. 5.11.1.7. Exercise 5-7. 5.11.1.8. Exercise 5-8. 5.11.1.9. Exercise 5-9. 5.11.1.10. Exercise 5-10. 5.11.1.11. Exercise 5-11. 5.11.1.12. Exercise 5-12. 5.11.1.13. Exercise 5-13. 5.11.1.14. Exercise 5-14. 5.11.1.15. Exercise 5-15. 5.11.1.16. Exercise 5-16. 5.11.1.17. Exercise 5-17. 5.11.1.18. Exercise 5-18. 5.11.1.19. Exercise 5-19. 5.11.1.20. Exercise 5-20. 5.11.1.21. Exercise 5-21. 5.11.1.22. Exercise 5-22. 5.11.1.23. Exercise 5-23. 5.11.1.24. Exercise 5-24. 5.11.1.25. Exercise 5-25. 5.11.1.26. Exercise 5-26. 5.11.1.27. Exercise 5-27. 5.11.1.28. Exercise 5-28. 5.11.1.29. Exercise 5-29. 5.11.1.30. Exercise 5-30. 5.11.1.31. Exercise 5-31.
Six. Integrity Constraints
6.1. Type Constraints
6.1.1. Selectors and THE_ Operators 6.1.2. Type Constraints Continued
6.2. Database Constraints
6.2.1. Example 1 6.2.2. Example 2 6.2.3. Example 3 6.2.4. Example 4 6.2.5. Example 5
6.3. Transactions 6.4. Why Database Constraint Checking Must Be Immediate 6.5. But Doesn't Some Checking Have to Be Deferred?
6.5.1. Multiple Assignment
6.6. Constraints and Predicates 6.7. Miscellaneous Issues 6.8. Summary 6.9. Exercises
6.9.1.
6.9.1.1. Exercise 6-1. 6.9.1.2. Exercise 6-2 6.9.1.3. Exercise 6-3 6.9.1.4. Exercise 6-4 6.9.1.5. Exercise 6-5 6.9.1.6. Exercise 6-6 6.9.1.7. Exercise 6-7 6.9.1.8. Exercise 6-8 6.9.1.9. Exercise 6-9 6.9.1.10. Exercise 6-10 6.9.1.11. Exercise 6-11 6.9.1.12. Exercise 6-12 6.9.1.13. Exercise 6-13 6.9.1.14. Exercise 6-14 6.9.1.15. Exercise 6-15 6.9.1.16. Exercise 6-16 6.9.1.17. Exercise 6-17 6.9.1.18. Exercise 6-18 6.9.1.19. Exercise 6-19 6.9.1.20. Exercise 6-20 6.9.1.21. Exercise 6-21 6.9.1.22. Exercise 6-22 6.9.1.23. Exercise 6-23 6.9.1.24. Exercise 6-24 6.9.1.25. Exercise 6-25
Seven. Database Design Theory
7.1. The Place of Design Theory 7.2. Functional Dependencies and Boyce/Codd Normal Form
7.2.1. Nonloss Decomposition 7.2.2. But Isn't It All Just Common Sense? 7.2.3. 1NF, 2NF, 3NF
7.3. Join Dependencies and Fifth Normal Form
7.3.1. The Significance of 5NF 7.3.2. More on 5NF
7.4. Two Cheers for Normalization 7.5. Orthogonality 7.6. Some Remarks on Physical Design 7.7. Summary 7.8. Exercises
7.8.1.
7.8.1.1. Exercise 7-1 7.8.1.2. Exercise 7-2 7.8.1.3. Exercise 7-3 7.8.1.4. Exercise 7-4 7.8.1.5. Exercise 7-5 7.8.1.6. Exercise 7-6 7.8.1.7. Exercise 7-7 7.8.1.8. Exercise 7-8 7.8.1.9. Exercise 7-9 7.8.1.10. Exercise 7-10 7.8.1.11. Exercise 7-11 7.8.1.12. Exercise 7-12 7.8.1.13. Exercise 7-13 7.8.1.14. Exercise 7-14 7.8.1.15. Exercise 7-15 7.8.1.16. Exercise 7-16 7.8.1.17. Exercise 7-17 7.8.1.18. Exercise 7-18 7.8.1.19. Exercise 7-19 7.8.1.20. Exercise 7-20 7.8.1.21. Exercise 7-21 7.7.1.22. Exercise 7-22 7.8.1.23. Exercise 7-23 7.8.1.24. Exercise 7-24 7.8.1.25. Exercise 7-25 7.8.1.26. Exercise 7-26 7.8.1.27. Exercise 7-27 7.8.1.28. Exercise 7-28
Eight. What Is the Relational Model?
8.1. The Relational Model Defined
5.1.1. Scalar Types 5.1.2. Relation Types 5.1.3. Relation Variables 5.1.4. Relational Assignment 5.1.5. Relational Operators
8.2. Objectives of the Relational Model 8.3. Some Database Principles 8.4. The Relational Model Versus Others 8.5. What Remains to Be Done?
5.5.1. Implementation 5.5.2. Foundations 5.5.3. Higher-Level Abstractions 5.5.4. Higher-Level Interfaces 5.5.5. So What About SQL?
8.6. Summary 8.7. Exercises
5.7.1.
5.7.1.1. Exercise 8-1 5.7.1.2. Exercise 8-2 5.7.1.3. Exercise 8-3 5.7.1.4. Exercise 8-4 5.7.1.5. Exercise 8-5 5.7.1.6. Exercise 8-6 5.7.1.7. Exercise 8-7 5.7.1.8. Exercise 8-8 5.7.1.9. Exercise 8-9 5.7.1.10. Exercise 8-10 5.7.1.11. Exercise 8-11 5.7.1.12. Exercise 8-12 5.7.1.13. Exercise 8-13 5.7.1.14. Exercise 8-14 5.7.1.15. Exercise 8-15 5.7.1.16. Exercise 8-16 5.7.1.17. Exercise 8-17 5.7.1.18. Exercise 8-18 5.7.1.19. Exercise 8-19 5.7.1.20. Exercise 8-20 5.7.1.21. Exercise 8-21 5.7.1.22. Exercise 8-22 5.7.1.23. Exercise 8-23 5.7.1.24. Exercise 8-24 5.7.1.25. Exercise 8-25 5.7.1.26. Exercise 8-26 5.7.1.27. Exercise 8-27 5.7.1.28. Exercise 8-28 5.7.1.29. Exercise 8-29 5.7.1.30. Exercise 8-30 5.7.1.31. Exercise 8-31 5.7.1.32. Exercise 8-32 5.7.1.33. Exercise 8-33 5.7.1.34. Exercise 8-34 5.7.1.35. Exercise 8-35 5.7.1.36. Exercise 8-36 5.7.1.37. Exercise 8-37 5.7.1.38. Exercise 8-38 5.7.1.39. Exercise 8-39 5.7.1.40. Exercise 8-40 5.7.1.41. Exercise 8-41 5.7.1.42. Exercise 8-42 5.7.1.43. Exercise 8-43 5.7.1.44. Exercise 8-44 5.7.1.45. Exercise 8-45 5.7.1.46. Exercise 8-46 5.7.1.47. Exercise 8-47 5.7.1.48. Exercise 8-48 5.7.1.49. Exercise 8-49 5.7.1.50. Exercise 8-50 5.7.1.51. Exercise 8-51 5.7.1.52. Exercise 8-52 5.7.1.53. Exercise 8-53 5.7.1.54. Exercise 8-54 5.7.1.55. Exercise 8-55 5.7.1.56. Exercise 8-56 5.7.1.57. Exercise 8-57 5.7.1.58. Exercise 8-58 5.7.1.59. Exercise 8-59 5.7.1.60. Exercise 8-60
A. A Little Bit of Logic
Propositions Predicates Quantification Free and Bound Variables More on Quantification
We Don't Need Both Quantifiers Empty Ranges Defining EXISTS and FORALL Other Kinds of Quantifiers
Database Constraints Queries Some Equivalences Summary
B. Suggestions for Further Reading Colophon Copyright
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion