Starter kit

The Cobalt database

Every quest runs against a real SQL Server database seeded with the defects from the story: duplicate loads, split payments, timezone drift, NULLs, and orphaned legacy rows.

Setup

  1. Install SQL Server Developer Edition, Express, or use the Azure SQL free tier.
  2. Open SSMS, Azure Data Studio, or VS Code with the MSSQL extension.
  3. Run the scripts in order: 01_schema.sql, 02_seed.sql, 03_grading-harness.sql.
  4. Run the verification queries below. If the counts match, you are ready for Day 1.

Verification

USE CobaltFiles;

SELECT COUNT(*) AS Orders        FROM sales.Orders;        -- 4,200
SELECT COUNT(*) AS Customers     FROM core.Customers;     -- 425 (400 people + 25 duplicates)
SELECT COUNT(*) AS Payments      FROM sales.Payments;     -- 5,040
SELECT COUNT(*) AS LegacyRows    FROM staging.LegacyOrderDump; -- 500
SELECT * FROM reporting.LegacyRevenue;                    -- the report that starts the mystery

Expected row counts

TableRowsWhy it matters
core.Stores1312 real stores plus test store S999
core.Employees4948 real people plus ghost employee 999
core.Customers425400 people plus 25 duplicate rows
core.Products30One malformed SKU for the JSON lesson
sales.Orders4,2003,000 clean plus 1,200 duplicates
sales.OrderLines12,600Three lines per order
sales.Payments5,040840 split-payment orders
sales.Returns300Un-netted in the legacy report
staging.LegacyOrderDump500Four date formats, 41 unmatched emails
No SQL Server? You can still read every lesson and pass every checkpoint on this site. The quest boxes save your SQL to your profile, but they cannot execute it — the site is intentionally lightweight and does not run a database server.