Boneyard Tools

What a SQLite file is and how to open one

Why SQLite stores an entire database in a single file, what .db and .sqlite extensions mean, and safe ways to inspect one.

One file, one database

SQLite is a self-contained database engine that keeps an entire database, its tables, indexes, schema and data, inside a single ordinary file on disk. There is no server to run and no connection to configure, which is why SQLite is embedded in phones, browsers, desktop apps and countless tools. When an application says it stores data in a .db or .sqlite file, that one file is the whole database.

What the extensions mean

The file extension is only a convention; SQLite itself does not care what a database is called. You will most often see .sqlite, .sqlite3, .db and .db3, and all of them are typically the same format. The real marker of a SQLite file is a fixed header string at the very start of the file, which is how a viewer can confirm it opened a genuine database rather than an unrelated file.

Reading a schema safely

Before querying data it helps to understand the structure. Each table has columns with a declared type and flags such as PRIMARY KEY, which uniquely identifies a row, and NOT NULL, which forbids empty values. This viewer surfaces those as PK and NOT NULL badges next to each column. Because the tool is strictly read-only and runs locally, you can inspect an unfamiliar database, including one from a colleague or a downloaded app, without risk of altering it.

When to reach for a full tool

An in-browser viewer is ideal for a quick look: confirming what tables exist, checking a schema, or running a SELECT to find a few rows. Once you need to edit records, add indexes, import data or work with a database too large to hold in memory, a desktop application such as DB Browser for SQLite or the sqlite3 command line client is the better choice. The two workflows complement each other: browse here, edit there.

Frequently asked questions

Can I open a database exported from my phone app?

Yes, if it is a real SQLite file, which most app data stores are. Drop it in and the viewer will list its tables. Because nothing is uploaded, sensitive exports stay on your machine.

Why does the engine take a moment on first use?

The WebAssembly SQLite build has to download the first time you open a database in a session. After that the browser caches it, so subsequent files open without the wait.