What is an RDBMS?
RDBMS stands for Relational Database Management System — the technology behind SQL.
The "relational" model in one sentence
Data is stored in tables, and tables can reference each other.
That's it. Two ideas. Everything else builds on top.
Example — a tiny bookstore
Imagine an online bookstore. You'd model the data with three tables:
authors
| id | name | birth_year |
|---|---|---|
| 1 | Jane Austen | 1775 |
| 2 | Toni Morrison | 1931 |
books
| id | title | author_id | price |
|---|---|---|---|
| 1 | Pride & Prejudice | 1 | 12.99 |
| 2 | Sense & Sensibility | 1 | 11.50 |
| 3 | Beloved | 2 | 14.00 |
orders
| id | book_id | customer_email | ordered_at |
|---|---|---|---|
| 1 | 1 | a@b.com | 2026-03-12 |
| 2 | 3 | a@b.com | 2026-03-15 |
Three tables, but they're connected:
books.author_id→authors.id(each book has one author)orders.book_id→books.id(each order is for one book)
That's the relational part. The connections (called foreign keys) let SQL answer questions like "show me every customer who ordered a Jane Austen novel" with a single query.
What an RDBMS does for you
Beyond just storing data, an RDBMS:
- Enforces structure — every row in
authorsMUST have anidand aname. No surprises. - Enforces relationships — you can't insert a book with
author_id = 99if there's no author 99. The database refuses. - Handles concurrency — 1000 users buying books simultaneously? The RDBMS keeps them from corrupting each other's data via transactions.
- Optimizes queries — when you write
WHERE author_id = 1, the RDBMS uses an index to find matches in milliseconds even with 10 million books. - Persists durably — once committed, data survives crashes, power loss, restarts.
Popular RDBMS systems (you'll see these in job postings)
| Name | Type | Where it shines |
|---|---|---|
| PostgreSQL | Open-source | Default modern choice; powerful + free |
| MySQL | Open-source | Web apps, WordPress, most "first DB" tutorials |
| SQLite | Embedded | Mobile apps, browser storage, this very tutorial's sandbox |
| MS SQL Server | Microsoft | Windows enterprise; .NET stack |
| Oracle | Enterprise | Banks, telcos, legacy enterprise |
| MariaDB | Open-source (MySQL fork) | Drop-in MySQL replacement |
All of them speak SQL. The dialect differs slightly (Postgres has DATE_TRUNC, MySQL has DATE_FORMAT) but 80% of SQL is identical across all of them.
What's NOT an RDBMS
For completeness — these systems exist but they're NOT relational:
- MongoDB — document store (stores JSON-like blobs, not tables)
- Redis — key-value cache (no relations)
- Neo4j — graph database (nodes + edges)
- Cassandra / DynamoDB — wide-column NoSQL (massive scale, no joins)
These have their place. But for 95% of real applications, an RDBMS is the right answer.
Next up
In the next lesson, Tables, Rows, and Columns, we'll get specific about the building blocks — what each one is, what a NULL value means, and the vocabulary every SQL conversation uses.