SQL — What Not to Do
SQL Anti-Patterns and Pitfalls for Developers
Designed for developers working with PostgreSQL in teams that don’t have a dedicated DBA this session will equip you with practical insights into identifying and avoiding common mistakes in modelling, querying, and transaction handling.
The goal is simple: to help you build PostgreSQL applications that are cleaner, faster, and more reliable.
🗓️ Registration for this course is now closed. If you are interested in attending a future session, please add your name to the waiting list.
What You’ll Learn ... Not To Do
You’ll learn from real-world examples of anti-patterns that quietly degrade performance, compromise data integrity, and lead to long-term technical debt.
Bad Modelling Practices
- Using key-value structures in a relational system
- Cramming multiple values into a single field
- Building overly wide, unmanageable tables
- Skipping normalisation when it's clearly needed
We’ll discuss why these choices are tempting, and why they so often backfire.
Misuse of SQL Features
- Misunderstanding how NULL works in logic and filters
- Implicit column orders in queries
- Embedding too much procedural logic in declarative SQL
Ignoring Atomicity and Constraints
- Failing to define constraints like NOT NULL, UNIQUE, or FOREIGN KEY
- Letting bad data slip through due to weak or missing validation
We’ll cover what happens when data integrity isn’t enforced at the database level.
Inefficient Queries
- Overuse of subqueries and nested CTEs
- Poor indexing and pagination strategies
- Writing SELECTs that return far more data than needed
Poor Transaction Management
- Optimising transaction timing
- Locking and deadlocks
- Overlooking concurrency and isolation level implications
Format and Schedule
Session duration: 3 hours
Sessions will be conducted in English via Zoom.
Registration for this course is now closed. If you are interested in attending a future session, please add your name to the waiting list using the form below.
Cost: €150 before taxes.
Participants must have the latest version of Zoom installed on their computer.
Sessions will not be recorded.
The course format combines theoretical slides with live demos, led by the instructor in real time.
This course will be conducted in English.
The session includes a live Q&A for direct interaction.
There are no scheduled breaks during the session.
Participants will receive a certificate of attendance upon completion of the session.
Join the waiting list!
Course duration: 1 session; 3 hours
Course cost: €150 before taxes
📝 Following form submission: You’ll receive payment instructions via email.
💳 Payment Methods: Credit card or direct bank transfer.
⚠️ Important: Your spot is only confirmed once payment is received.
📩 If you have any questions or issues, please contact us at [email protected]
Instructors
He is recognised PostgreSQL contributor and is one of the contributors to pgBackRest - a reliable backup and restore solution for PostgreSQL.

Senior PostgreSQL Expert
Thom Brown has worked in the industry for over 20 years. With many years of experience working with PostgreSQL, he has extensive expertise in supporting clients on their PostgreSQL journey, helping them achieve high availability for their business-critical projects.

PostgreSQL Consultant
