How to Model Approval Workflows in a Database Without Boolean Chaos A supplier application has been approved. Then its bank details change. Is the supplier still approved? The answer sounds like a business-policy question, but it quickly becomes a database design...
When Your Data Sources Disagree: Designing a Database That Preserves the Truth A company is preparing to replace three old systems with one new database. The CRM says customer 1842 is called Northstar Labs. The billing system says Northstar Laboratories Ltd. A...
External IDs Are Not Your IDs: Modeling Identity Across Systems A backend team adds one column to the customer table: stripe_customer_id Six months later, another integration arrives: hubspot_contact_id Then the company migrates its support platform, imports customers...
When “Current” Lies: How to Model Relationships That Change Over Time A support manager opens a customer record and sees that the account belongs to the Enterprise plan. Nothing looks wrong. Then finance asks a different question: “Which plan was this customer on when...
Your Database Is Quietly Deciding What Your Product Is Allowed to Become A schema rarely announces its biggest decisions. It does not display a warning that says, “This customer may only belong to one company,” or “An order can never change ownership,” or “We have...
The Schema Is Where Your Product Makes Its Promises A database does not merely store what your application has already decided. It decides what your application is allowed to believe. That sounds dramatic until a simple product feature turns into a week of awkward...
Recent Comments