SQLWhat Is a Database?

What Is a Database?

A database is an organized collection of structured data that is stored electronically and designed to be easily accessed, managed, and updated. That definition is broad on purpose — a database can be as small as a phone’s contact list or as large as the system tracking every transaction for a global bank.

The key word is organized. A pile of data dumped into a folder isn’t a database — the organization is what makes it possible to reliably find, combine, and trust the data later.

Why not just use spreadsheets or flat files?

A spreadsheet or a plain text file can absolutely store data, and for small, single-user tasks that’s often fine. But real applications — the kind used by many people or systems at once — run into problems that spreadsheets were never built to solve:

  • Concurrency — what happens when two people try to update the same row at the same time? Databases coordinate simultaneous access so changes don't silently overwrite each other or corrupt data

  • Integrity — databases can enforce rules (a price can't be negative, an order must reference a real customer) automatically, instead of relying on every script or person to remember them

  • Querying at scale — finding "all orders over $100 placed in the last 7 days by customers in Ontario" across a spreadsheet with ten million rows is painfully slow; databases use indexes and query planners built exactly for this

  • Relationships — real-world data is connected (customers have orders, orders have line items, line items reference products); databases model and enforce those connections directly instead of duplicating data everywhere

  • Durability and recovery — databases are built to survive crashes, power loss, and hardware failure without losing committed data

None of this means spreadsheets are bad — they’re a great tool for the job they’re designed for. Databases exist for the moment your data (or your team) outgrows what a single file can safely handle.

Database vs. Database Management System

These two terms get used almost interchangeably in casual conversation, but they mean different things:

  • A database is the actual data — the organized collection of tables, rows, and relationships

  • A Database Management System (DBMS) is the software that creates, stores, secures, and lets you interact with that data

In practice, when people say “we use PostgreSQL as our database,” they really mean PostgreSQL is the DBMS that manages one or more databases for them. SQL is the language you use to talk to a DBMS.

Common relational DBMS examples

DBMS

Type

Typical use case

PostgreSQL

Open source

General-purpose, standards-compliant, popular for new applications

MySQL

Open source

Web applications; historically paired with PHP-based stacks

SQLite

Open source, embedded

Mobile apps, local tools, prototyping — the whole database is a single file

SQL Server

Commercial (Microsoft)

Enterprise applications, especially in Microsoft-centric environments

Oracle Database

Commercial

Large enterprise and legacy systems, banking, telecom

Note
This entire tutorial series focuses on **relational** databases — the kind that organize data into tables — since that’s what SQL was built for. There are also non-relational (“NoSQL”) databases, which we compare later in this series.