SQL is the ubiquitous language for software developers working with
structured data. Most developers who rely on SQL are experts in their
favorite language (such as Java, Python, or Go), but they're not experts
in SQL. They often depend on antipatterns - solutions that look right
but become increasingly painful to work with as you uncover their hidden
costs. Learn to identify and avoid many of these common blunders.
Refactor an inherited nightmare into a data model that really works.
Updated for the current versions of MySQL and Python, this new edition
adds a dozen brand new mini-antipatterns for quick wins.
No matter which platform, framework, or language you use, the database
is the foundation of your application, and the SQL database language is
the standard for working with it. Antipatterns are solutions that look
simple at the surface, but soon mire you down with needless work. Learn
to identify these traps, and craft better solutions for the often-asked
questions in this book. Avoid the mistakes that lead to poor performance
and quality, and master the principles that make SQL a powerful and
flexible tool for handling data and logic.
Dive deep into SQL and database design, and learn to recognize the most
common missteps made by software developers in database modeling, SQL
query logic, and code design of data-driven applications. See practical
examples of misconceptions about SQL that can lure software projects
astray. Find the greatest value in each group of data. Understand why an
intersection table may be your new best friend. Store passwords securely
and don't reinvent the wheel. Handle NULL values like a pro. Defend your
web applications against the security weakness of SQL injection.
Use SQL the right way - it can save you from headaches and needless
work, and let your application really shine!
What You Need:
The SQL examples use the MySQL 8.0 flavor, but other popular brands of
RDBMS are mentioned. Other code examples use Python 3.9+ or Ruby 2.7+.