Allow only alphabets in a SQL Server column with an explicit ASCII-letter rule. These tested examples reject empty strings, NULL, spaces, digits, and punctuation while explaining collation and existing-data checks.
Edge Constraints: Controlling Which Nodes a Graph Edge Connects
An edge table with no rules accepts nonsense links. Add an edge constraint, watch the bad edge fail, and see what the constraint still does not check.
Polymorphic Associations: Why One Column Cannot Point at Many Tables
One column that points at many tables cannot be enforced by SQL Server. Here is the demo, the orphans it allows, and a design that says no to bad rows.
Soft Delete With an IsDeleted Column: Indexes, Views and Keys
Design soft delete with an IsDeleted flag, filtered unique keys and indexes, a live-row view, and a measured archive process.
Designing Your First Table: Columns, Keys and Data Types
Designing Your First Table gets easier when you decide what it must hold before you write any SQL. This post walks through naming, data types, NULL or NOT NULL, a primary key, a default and a check constraint on a small Customers table. It also shows what to leave for later.
Joining Three Tables: Following the Keys Step by Step
Joining three tables is easier when you add one join at a time and check the row count after each step. This post builds a small bookshop query from Customers, Orders and OrderLines, adds the book titles, and shows how a missing join condition multiplies rows.
Rows, Columns and Tables: How a Database Holds Information
Rows, Columns and Tables are the three ideas behind every relational database. A table holds one kind of thing, a column describes one fact about it, and a row records one item. This post builds a small Books table in SQL Server and reads it back by row and by column.







