RadarTrek
Home/Courses/SQL for Builders/What Is a Database?
Lesson 01 / 9·6 minFree

What Is a Database?

A structured way to store, organise, and find information — faster than any spreadsheet

A database contains tables. A table is like a spreadsheet — columns define the data shape, rows hold the data. users idnameemailplan 1 Sarah sarah@co.com pro 2 Alex alex@co.com free 3 Priya priya@co.com pro ↑ column ← row orders iduser_idamountstatus 1 1 £49.00 paid 2 3 £49.00 paid 3 2 £0.00 free JOIN users table — who they are orders table — what they bought user_id in orders links back to id in users — that's how tables connect

Every app you've ever used has a database behind it. Instagram's database stores your photos, followers, and likes. Monzo's stores your transactions. Airbnb's stores properties, bookings, and reviews. SQL is the language you use to talk to these databases.

The filing cabinet analogy

💡

A database is a filing cabinet. Tables are the drawers.

Imagine a filing cabinet for a small business. One drawer holds customer records. Another holds invoices. Another holds products. Each drawer has files — and every file looks the same (same columns: name, date, amount). A database is identical. The filing cabinet = the database. Each drawer = a table. Each file = a row. The fields on each file = the columns.

Tables, rows, and columns

  • TableA grid of data about one type of thing. A "users" table stores data about users. An "orders" table stores orders. Each thing gets its own table.
  • ColumnOne piece of information about each row. In the users table: id, name, email, plan, created_at. Every row has the same columns — that's what makes it a table.
  • RowOne record. One user. One order. One product. A row is a single instance of whatever the table represents.
  • Primary keyA unique identifier for each row — usually called "id". No two rows share the same id. This is how you refer to a specific row: "user 42" means the row where id=42.
  • Foreign keyA column that links to another table's primary key. orders.user_id stores the id of the user who placed that order. This is how tables connect.
!

Why not just use a spreadsheet?

For 100 rows — spreadsheets work fine. For 1 million rows, 50 users editing simultaneously, data that must never be wrong, and queries across 20 linked sheets — you need a database. SQL lets you ask questions of enormous amounts of data in milliseconds.

The databases you'll encounter

  • PostgreSQLThe most popular open-source SQL database. Used by Supabase, Heroku, AWS. This course uses Postgres syntax (works on 95% of databases).
  • MySQL / MariaDBVery common in web hosting and WordPress. Slightly different syntax in places but same concepts.
  • SQLiteA single-file database. Used by mobile apps and for local development. No server needed.
  • BigQuery, SnowflakeCloud data warehouses for analytics on billions of rows. Same SQL concepts — just much bigger scale.

Try this

Open Supabase (supabase.com) or any online SQL playground and look at their example database. Find a table, look at the column names, and try to understand what each column stores. Notice the "id" column on every table.

RadarTrek Intel — monthly score updates

We track 40+ tools so you don't have to. Score changes, new tools, and new guides — once a month, no spam.