Part 1 Get started 1
1 Introducing databases and SQL 3
2 Related tables and more SQL 25
3 Overview of database design 49
Part 2 Master database design 71
4 Entities and attributes 73
5 Relationships 103
6 Normalization and implementation 137
7 Security and optimization 175
Part 3 Database design and AI 211
8 Database design in the age of generative AI 213
Grokking Relational Database Design makes the principles of designing relational databases approachable and engaging. Everything in this book is reinforced by hands-on exercises and examples.
In Grokking Relational Database Design, you’ll learn how to:
A well-constructed database is easy to understand, query, manage, and scale when your app needs to grow. In Grokking Relational Database Design you’ll learn the basics of relational database design including how to name fields and tables, which data to store where, how to eliminate repetition, good practices for data collection and hygiene, and much more. You won’t need a computer science degree or in-depth knowledge of programming—the book’s practical examples and down-to-earth definitions are beginner-friendly.
Almost every business uses a relational database system. Whether you’re a software developer, an analyst creating reports and dashboards, or a business user just trying to pull the latest numbers, it pays to understand how a relational database operates. This friendly, easy-to-follow book guides you from square one through the basics of relational database design.
Grokking Relational Database Design introduces the core skills you need to assemble and query tables using SQL. The clear explanations, intuitive illustrations, and hands-on projects make database theory come to life, even if you can’t tell a primary key from an inner join. As you go, you’ll design, implement, and optimize a database for an e-commerce application and explore how generative AI simplifies the mundane tasks of database designs.
For self-taught programmers, software engineers, data scientists, and business data users. No previous experience with relational databases assumed.