1. Home
  2. Developer tools
  3. SQLite Viewer

SQLite Viewer

Look inside a SQLite database from an app, a phone backup or a test fixture without installing DB Browser or the sqlite3 command line.

Free, no sign-up. Runs in your browser: nothing is uploaded.

How to use SQLite Viewer

  1. Drop a .sqlite, .db or .sqlite3 file.
  2. Click a table or write a SQL query and press Run.
  3. Download the result as CSV, or the edited database.

Features

  • Real SQLite 3 compiled to WebAssembly (sql.js)
  • Table list with row counts and CREATE statements
  • Any SQL: joins, CTEs, window functions, UPDATE and INSERT
  • Query time and up to 1,000 rows on screen
  • CSV export and download of the edited database

Supported formats

Input

  • SQLITE
  • DB

You get

  • CSV
  • SQLITE

Private by design

Everything you enter is processed by your browser on this device. Nothing is sent to openWorkstand or anyone else, so the SQLite Viewer is safe for private and work data. After you have used it once while online, it also works without an internet connection. How local processing works

Good to know

  • The whole database is loaded into memory, so very large files (over about 1 GB) may not open.
  • Encrypted databases (SQLCipher) cannot be opened.

Guide

Opening and querying SQLite databases in the browser

SQLite files turn up everywhere: inside mobile apps, browser profiles, desktop tools, test fixtures and data exports. Looking inside one usually means installing DB Browser for SQLite or remembering the sqlite3 shell commands. This viewer opens the file in a browser tab instead, lists its tables and lets you run any SQL against it, while the file stays on your device.

Real SQLite, compiled to WebAssembly

The page loads sql.js, the official SQLite C library compiled to WebAssembly, from this site the first time you open a database. That matters because it is the same engine your application uses: the same SQL dialect, the same type affinity rules, JSON functions, window functions and common table expressions. A query that works here will behave the same way in your app.

What you see after opening a file

The table list is read from sqlite_master, the catalogue every SQLite database keeps. Each table and view appears as a chip with its row count, and clicking one runs SELECT * FROM "table" LIMIT 100. Under the chips, the schema section shows the original CREATE TABLE, CREATE INDEX and CREATE VIEW statements, which is often the quickest way to see column types, keys and constraints.

Running queries and editing data

Type SQL into the editor and press Run or Ctrl+Enter. Query time is shown with the results, and the first 1,000 rows appear in a scrollable table; use LIMIT and OFFSET to page through larger tables. You can also change data with INSERT, UPDATE, DELETE or ALTER TABLE. Those changes live in memory: nothing touches the original file until you press “Download database” and save a new copy. Every result table can be downloaded as CSV for a spreadsheet.

A worked example

The Sample button builds a small shop database with five customers and seven orders and runs a revenue query that joins the two tables and counts only paid orders. The top row reads Grace Hopper, US, 1 paid order, 980 in revenue, because her second order is still pending and the join condition excludes it. Replacing the query with SELECT status, COUNT(*) AS n FROM orders GROUP BY status ORDER BY n DESC returns three rows, and the CSV download contains paid,5, refunded,1 and pending,1.

Practical tips

Use PRAGMA table_info('orders') for a quick column list with types and defaults, and PRAGMA foreign_key_list('orders') to see relationships. SQLite stores dates as text, numbers or Unix times depending on the app, so datetime(col, 'unixepoch') and date(col) help turn them into something readable. For Apple apps, timestamps often count from 2001; the Cocoa Timestamp Converter explains those.

Limits

The whole database is loaded into memory, so very large files, roughly above a gigabyte, may fail on devices with little RAM. Encrypted databases need their key and a SQLCipher build, so they cannot be opened here. Extensions that are not built into sql.js, such as spatial ones, are not available.

Privacy and offline use

The database file is read with the browser’s File API and handed straight to the WebAssembly engine in the same tab. Nothing is uploaded, so the viewer is safe for customer databases and app data you would not send to a third-party service, and after the first load it keeps working without a network connection.

  • Parquet Viewer inspects columnar data files from analytics tools.
  • SQL Formatter tidies long queries before you paste them in.
  • CSV to SQL turns a spreadsheet into INSERT statements you can run here.
  • SQL to Prisma converts the CREATE TABLE statements into Prisma models.

Checked against the current version of the SQLite Viewer on .

Troubleshooting

The download did not start

Look for your browser’s download bar or icon. Some browsers ask once before a site may download files; allow it and click the button again.

Frequently asked questions

Why does a file from my phone backup say it is not a database?

Some apps encrypt their SQLite files or wrap them in another container, and some backups store databases with a write-ahead log (a -wal file) that holds the newest pages. Copy the -wal file next to the database and open it with the sqlite3 command line to merge it, or export the backup unencrypted first.

Can I run several statements at once?

Yes. Separate them with semicolons and press Run: all of them execute in order, and the result table shows the output of the last statement that returned rows, which is handy for an UPDATE followed by a SELECT that checks it.

Can it open encrypted SQLite databases?

No. Files encrypted with SQLCipher or the SQLite Encryption Extension need their key and a build that includes the cipher; this viewer uses standard SQLite and reports “file is not a database”.

Are my changes saved to the original file?

No. Edits stay in memory in this tab. Press “Download database” to save a new copy with your changes; the original file on your disk is never touched.

Keep working with the result

After you download, choose “Save to Workstand” to keep the result in a folder on your computer, attach it to a project and create a follow-up task. It is saved by your browser, not uploaded.