Guide for developers and data architects building databases with SQL & data model patterns.

You have SQL and database questions.
We have the answers.

Made by real data professionals
for real data professionals.
Ready to order? Click here.
Dofactory SQL
What is Dofactory SQL

What is Dofactory SQL?

Dofactory SQL is a SQL + Database design pattern framework to help you build better data solutions. Learn to create world-class databases with SQL design patterns, our Ultra-Clean™ data architecture, low-query techniques, and more.
Dofactory SQL is a unique package that offers answers and data solutions to the most crucial questions that data developers and designers have. You won't find anything like it anywhere else.

What others are saying.

Here's unsolicited feedback by one of our happy users:
Jonathan Hart
Data Developer
"One of my best purchases."
"A couple years ago I purchased your SQL product and it was one of my best purchases.

My career has benefited substantially because of it. So, thank you for all the work you put into it."


What do I get?

Simply download and install your package. With that you have instant answers to all your SQL questions -- data models and code included. Getting started couldn't be easier.

Here's the table of contents for the full package.

  • Chapter 1:   SQL Patterns Introduction
    Understanding design patterns for SQL and Databases
    • Evolution of SQL
    • What are Design Patterns?
    • What are Data Design Patterns?
    • Categories of Data Model Patterns
    • Building Applications with Databases  --  Sets vs Records, Full Stack, Real-world SaaS examples
    • Data Model Conventions and Style
    • SQL Conventions and Style
    • Reference Applications and Data Models
  • Chapter 2:   Clean Data Model Patterns
    Laying a solid, clean foundation for data models
    • Agile / Lean Data Models
    • ER Diagram Patterns
    • Making Databases User-Friendly
    • Primary Key Patterns
    • Foreign Key Patterns
    • Data Integrity Patterns  --  Entity, Domain, Referential, Business Integrity, Cascading Updates & Deletes
    • Relationship Types  --  1-1, 1-M, M-M, and Others
    • Choosing Data Types  --  Primary Key & Foreign Key Types, String Types, Numeric Types, Date/Time Types, Boolean Types, etc.
    • Anti Pattern: Stored Procedures
    • Anti Pattern: Triggers
    • Anti Pattern: Views
    • Anti Pattern: User-Defined Functions
    • Indexing Patterns  --  Cardinality, Clustered Index, Covered Index, Filtered Index
    • Does your Database Smell?  --  Value smells, Column smells, Table smells, Database smalls, Transaction Smells
  • Chapter 3:   Ultra-Clean™ Data Model Patterns
    Advanced data model patterns and best practices
    • Record Name Pattern
    • Short Name Pattern  --  Alias Pattern
    • Rollup Column Pattern
    • Sort Column Pattern
    • External ID Pattern
    • Missing Marker Pattern
    • Snapshot Pattern
    • Journaling Pattern
    • Enumeration Patterns  --  Check Constraints, Bit Columns, Lookup Tables
    • One True Lookup or MUCK Table Pattern
    • Name-Value Pattern
    • Polymorphic Association Pattern
    • Final Thoughts
  • Chapter 4:   Normalization Patterns
    Better models through (de)normalization
    • First Normal Form (1NF)
    • Second Normal Form (2NF)
    • Third Normal Form (3NF)
    • Boyce Codd Normal Form (BCNF)
    • Fourth Normal Form (4NF)
    • Fifth Normal Form (5NF)
    • Domain Key Normal Form (DKNF)
    • Sixth Normal Form (6NF)
    • De-normalization Pattern
    • Normalization Final Thoughts
  • Chapter 5:   SQL & Data Access Patterns
    Creating highly effective and efficient queries.
    • Transactions: Short & Sweet
    • OLTP vs OLAP
    • SQL SELECT Patterns
    • SQL INSERT Patterns
    • SQL UPDATE Patterns
    • SQL DELETE Patterns
    • WHERE Clause
    • Subquery Patterns
    • Date &Time Patterns
    • The IN Clause
    • Operator Performance  --  Positive Operators vs Negative Operators
    • NULL Value Pattern
    • Sargeable Queries
    • SQL Batch Patterns
    • Multiple ResultSet Pattern
    • Table Alias Pattern
    • SQL Namespaces
    • SQL Injection  --  Parameterized Queries, White Lists, Black Lists, User Input Constraints, Best Practices
    • Encryption Patterns
    • Timeout Patterns
    • Random Record Pattern
  • Chapter 6:   Data Persistence Patterns
    Building effective interfaces between applications and databases
    • Active Record Pattern
    • Repository Pattern
    • Data Mapper Pattern
    • Data Cache Patterns  --  Identity Map Pattern, Lazy Load Pattern, Eager Load Pattern
    • Unit-of-Work Pattern  --  Concurrency, Isolation Levels, Deadlock Patterns
    • Query Object Pattern
    • Null Object Pattern
    • Media Storage Pattern  --  How to store images, videos, documents, etc.
  • Chapter 7:   Object-Relational Patterns
    Friction of object-think versus relational-think
    • Impedance Mismatch  --  Cost, Complexity, Patterns
    • Object vs Relational
    • Persistence Ignorance
    • DDD - Domain Driven Design
    • OO Data Models  --  Single Table Inheritance, Concrete Table Inheritance, Class Table Inheritance
    • Object Successes  --
  • Chapter 8:   Data Experience Patterns
    Creating delightful data interaction experiences for your users
    • UI/UX
    • Why UI/UX?
    • Thinking in CRUD  --  View, Add, Edit, Delete Cycle
    • DX Patterns  --  DX Design, DX Scaffolding, DX Customization, Related Lists
    • Search Patterns  --  Exact Search, Pattern Search, Text Search, Lucene.NET
    • Filter Patterns
    • Sort Patterns
    • Saved Views  --  Filter + Sort = Saved Views
    • Pagination Patterns
    • Modularity
    • Data Experience Review
  • Chapter 9:   Auditing & Archiving Patterns
    Keeping track of data changes and historical data
    • Auditing Patterns
    • Logging Patterns  --  Activity Logging, Data Logging, Error Logging
    • History Patterns
    • Soft Delete Patterns
    • History Patterns  --  Reversing History, Undo/Redo
    • Archiving Pattern
  • Chapter 10:   Supertype-Subtype Patterns
    Table inheritance and hierarchies
    • Single Supertype-Subtype Table
    • Multiple Supertype-Subtype Tables
    • Deeper Hierarchies
    • Table Inheritance Patterns
    • Single Table Inheritance Patterns
    • Class Table Inheritance Patterns
    • Concrete Table Inheritance Patterns
  • Chapter 11:   Tree & Hierarchy Patterns
    Data Models for Trees and Hierarchies
    • Adjacency Lists
    • Materialized Paths
    • Nested Sets
    • Trees in Action
  • Chapter 12:   Meta Model Patterns
    The holy grail in data modeling
    • Meta Modeling Essentials
    • Meta Models vs Meta Data
    • Model Extensibility
    • Custom Column Pattern
    • EAV Patterns        --  EAV = Entity Attribute Value pattern
    • EAV with No constraints
    • EAV with Entity constraints
    • EAV with Attribute constraints
    • EAV with Value constraints
    • EAD Patterns        --  EAD = Entity Attribute Data pattern
    • EAD in Action
    • Hybrid SQL and NoSQL  --  Polyglot Persistence
    • Key Value Stores
    • Meta Model Success Stories  --  WordPress, Magento, Salesforce
    • Meta Modeling Review
  • Chapter 13:   Seed Data Models
    Accelerating data modeling with Seed Models
    • Party Data Model  --  Modeling People and Organizations
    • Party Relationships
    • Party Locator
    • Party Model in Action
    • Party Models in the Real World  --  Siebel
    • Mother of all Models
    • Excellence Data Models
  • Chapter 14:   Pattern Cheat Sheet
    Valuable Reference Guide to Data Patterns
    • Essential Data Model Patterns
    • Advanced Data Model Patterns
    • Normalization Patterns
    • SQL & Data Access Patterns
    • Data Persistence Patterns
    • Object-Relational Patterns
    • Data Experience Patterns
    • Auditing & Archiving Patterns
    • Meta Model Patterns
    • Seed Data Model Patterns
  • Chapter 15:   Sql Coding and Naming Conventions
    Building consistency with good naming and coding conventions
    • General Naming Conventions
    • Database Naming
    • Schema Naming
    • Table Naming
    • Column Naming  --  Primary Key, Foreign Key, Data Types, Nullabiity, Audit
    • Index Naming
    • Naming Other Objects  --  Stored Procedures, Triggers, Views
    • SQL Coding and Formatting Conventions  --  Crafting Legible Queries
    • Using Table Aliases
    • Summary

With Dofactory .NET you get 15 information-packed chapters, each one covering an in-depth topic together with comprehensive software solutions that make the topic come to life.

It has never been easier to learn rapid SQL development with design patterns, architecture, low query, and more. Get ready for a whole new data developer experience.


Reference Applications

Dofactory SQL comes with 2 comprehensive applications which allow you to experience the data patterns first hand in a real-world application environment.

Below are a few screenshots of the Training App which is a sample .NET application designed for software training companies.


Visually explore the benefits of Data Patterns

This may seem strange, but numerous SQL patterns have a visual manifestation in the UI. Those that do are marked with a icon in the application. Hovering over these icons will display a tooltip that shows which pattern(s) are at work. As you can see below, many patterns (7 on this page alone) do have an impact on the user experience.


Well-designed data models and ER diagrams included.

Available throughout the package.


Join the world's top 5% SQL experts

Dofactory SQL helps you:
Write more effective SQL
Design better data models
Create ultra-fast databases
Avoid common database mistakes.
Become a top 5% SQL expert
Your career won't be the same!
"A True MasterPiece"


Dofactory SQL comes in 2 editions.

Most Popular

Dofactory SQL

$ 229
$ 279
1. Intro to SQL Patterns  
2. Clean Data Models  
3. Ultra-Clean™ Data Models  
4. Normalization Patterns  
5. SQL & Data Access Patterns  
6. Data Persistence Patterns  
7. Object-Relational Patterns  
8. Data Experience Patterns  
9. Auditing & Archiving Patterns  
10. Supertype-Subtype Patterns    
11. Tree & Hierarchy Patterns    
12. Meta Model Patterns    
13. Seed Data Models    
14. Bonus: Pattern Cheat Sheet  
15. Bonus: Database Coding and Naming Conventions  


Choose the edition that is right for you.

Dofactory SQL 8
Dofactory SQL 8      Plus Edition
1-Developer license
Dofactory SQL 8      Pro Edition
1-Developer license

Grow with Dofactory

Grow with Dofactory.
Accelerate your SQL career today.

Own Your Future.

Stay Inspired!
Join other developers and designers who have already signed up for our mailing list.
Terms     Privacy     Cookies       Do Not Sell       Licensing      
Made with    in Austin, Texas.  - vsn 44.0.0
© Data & Object Factory, LLC.