Plenty of people ask us for "a database", and plenty more need one without knowing it. They have a spreadsheet that has grown into something the whole team depends on, and it's starting to creak.
So what is a database application, and what does it do that a spreadsheet can't?
A spreadsheet will let you type anything
That's what makes spreadsheets so useful, and it's also the problem. Any cell can hold any value. A date can be typed as text, a price can be left blank, a customer can be spelt three different ways, and nothing complains. The mistakes only surface later, usually when someone is trying to add up the figures.
A database is built around rules about what the data is allowed to look like, and it applies them every time anything is saved:
- Every value has a type. A date is a date and a price is a number, so neither can quietly turn into text.
- Required means required. If every visit needs an outcome, a visit without one can't be saved.
- Unique means unique. Two products can't share a stock code, and two people can't have the same reference.
- Links can't break. If a booking belongs to a course, the course has to exist, and it can't be deleted while bookings still point to it.
Rules like these keep the data trustworthy years later, long after the people who set it up have moved on.
Each fact is stored once
In a spreadsheet, the same information tends to be copied around: the customer's address on every order row, the project name typed into every timesheet. When something changes, some copies get updated and some don't.
A database keeps each fact in one place and links to it. There's one record for each customer, and every order points to it. Change the address once and it's right everywhere.
You can ask it questions
Because the data is structured and linked, a database can answer questions that would take hours to work out by hand: every order over £500 from customers in the North West, excluding returns, month by month. It answers in moments, even across years of records, and the answer is the same whoever asks.
Lots of people at once
A database is built to be used by many people at the same time. Nobody waits for someone else to close the file, and there's no "final_v3_really_final.xlsx". It can also record who changed what and when, and limit what each person can see and do.
A spreadsheet is a blank page. A database is a set of rules about what's allowed on the page.
From database to application
The database is only the bottom layer. A database application adds two more on top:
- The rules of your process. Who approves what, what happens when something is overdue, which figures are calculated and how. This is the part that's specific to your team.
- The screens people use. Forms to enter information, lists to find it, and dashboards and reports to make sense of it, designed around the jobs people actually do.
Most people never see the database itself. They see a form that asks for the right things, and a report that's ready when they need it.
Do you need one?
Not always. A spreadsheet is perfect for a one-off analysis, or a list that one person looks after. A database application is worth considering when several people rely on the same data, when mistakes in it are costly, or when getting reports out of it has become a job in itself.
If that sounds familiar, tell us about it. We've been turning spreadsheets into systems for twenty years, and it's usually less daunting than people expect.