What is a relational database and why should developers care
relational model, tables, rows, columns, primary key, schema, RDBMS options
The Relational Model in 60 Seconds
A relational database stores data in tables. A table is a grid: columns define what you store, rows hold actual values. Every row is uniquely identified by a primary key — a column (or set of columns) whose value never repeats.
You already know this model. Think of a spreadsheet where each sheet is a table, each header is a column, and each row is a record. The difference: a database enforces rules, handles millions of rows without slowing down, and lets multiple processes read and write simultaneously without corrupting data.
Why Not Just Use Files or NoSQL?
Files can't join two datasets in milliseconds. NoSQL is great for flexible documents but trades structured querying for flexibility. Relational databases give you SQL — a declarative language where you describe the data you want and the engine figures out how to get it.
Popular relational databases: PostgreSQL (open-source, developer-friendly), MySQL/MariaDB (widely hosted), SQLite (embedded, zero config), SQL Server (enterprise Windows shops). The SQL you learn here transfers across all of them with minor syntax differences.
Mental Model to Keep
Think of tables as contracts. Every row in an orders table is a valid order. The schema — column names and types — is that contract. SQL lets you query across contracts without loading everything into memory.
-- This is valid SQL in every major database
SELECT * FROM users;