SQLite Viewer & Query Playground

Drop a .sqlite or .db file to list its tables, views, indexes and triggers and browse rows with paging, sorting and filtering. Run multi-statement SQL in the editor, export results as CSV, Excel or JSON, and save the changed database as .sqlite. Your files never leave your device.

On-device・No uploadMobile friendlyWorks offline

Your files and input are processed only inside your browser on this device and are never uploaded to our servers.

Drop a SQLite file (.sqlite / .db) here

or

CSV, TSV and Excel (.xlsx) can be imported as tables. Files never leave your device.Accepts: .sqlite · .sqlite3 · .db · .csv · .tsv · .xlsxUp to 200 MB per file

How to use

  1. app.sqlitetables and schema

    Open a database file

  2. SELECT resultsort and filter

    Run SQL and view the table

  3. result.csvwhole DB as .sqlite

    Export as CSV, Excel or JSON

Open a SQLite file, run SQL and export the results
  1. Drop a .sqlite / .sqlite3 / .db file or pick one with "Open a file". To just try it, press "Try the sample DB"; to start from scratch, press "Create an empty database".

  2. Pick a table or view in the list on the left to see its rows under "Data". Press a column name to sort; type in the filter box to keep only rows where any column contains the text. "Schema" shows columns and CREATE statements.

  3. Write SQL in "Query" and press "Run" (Ctrl + Enter). Separate statements with ;. EXPLAIN QUERY PLAN shows the plan. An error shows the statement, line and column and jumps to the position when pressed.

  4. Import CSV, TSV or Excel (.xlsx) as tables with "Import CSV / Excel as a table", then search and aggregate them with SQL.

  5. Export a result as CSV, Excel or JSON. Save the whole database with "Save database (.sqlite)" or as SQL statements with "SQL dump (.sql)".

What it does

Data never leaves your device

SQLite (sql.js 1.15.0, the official C source compiled to wasm; SQLite 3.54) runs inside your browser on this page. The database exists only in browser memory and nothing is sent to a server. The wasm is served from this site; no external CDN is used.

Heavy queries do not freeze the page, and can be stopped

SQL runs in a Web Worker. If a query takes long, "Stop" terminates the Worker. If the state before the run was kept, the database is restored to it (databases above 64 MB are not kept, so they are closed instead).

See the structure at a glance

Tables, views, indexes and triggers are listed with each table’s row count, column types, primary keys, NOT NULL, defaults and the CREATE statement.

Error positions

When a script fails, the statement number, line and column and that line are shown. SQLite does not report an error position as line and column, so the position is estimated from a word in the message (near "…", an unknown table name, …). When it cannot be estimated, the start of the statement is shown.

Import CSV / Excel and query it

Column types are inferred from the values as INTEGER, REAL or TEXT (values such as "007" with a leading zero stay TEXT). Empty cells become NULL. Each sheet of an xlsx becomes its own table.

Export

Save a result as CSV (UTF-8 with BOM), Excel or JSON, the database as .sqlite, and the schema and data as SQL statements (.sql). CSV and Excel can prefix text starting with = + - @ (except plain numbers such as -100) with ' so it is not read as a formula (on by default).

Use cases

  • Look inside a .db / .sqlite file (app data or a downloaded dataset) without installing anything
  • Filter and aggregate a CSV or Excel table with SQL and export the result back to CSV or Excel
  • Practice SELECT, JOIN and GROUP BY on a sample database without setting up an environment
  • Check with EXPLAIN QUERY PLAN whether an index is used
  • Turn a database into an SQL dump to move it elsewhere

Supported formats

Open as a database

.sqlite.sqlite3.db.db3.s3db.sl3

Import as a table

.csv.tsv.txt.xlsx.xlsm

Export

.sqlite.sql.csv.xlsx.json

Capability matrix

FeatureSupportNotes
Open a SQLite file and view tables, views, indexes, triggers and schemaSupported—
Table rows (paging, sorting, filtering, row counts)SupportedThe filter keeps rows where any column contains the text (case-insensitive for ASCII letters)
Run SQL (several statements, timing, error position) and EXPLAIN QUERY PLANSupported—
HistoryPartialOnly while this tab is open (latest 30). Cleared when you close it
Import CSV, TSV and Excel as tablesSupportedThe old .xls format is not supported
Export results as CSV, Excel, JSON; save the database as .sqlite; SQL dumpSupported—
BLOB (binary) valuesPartialShown as a length; exports contain only the first 32 bytes in hex. Saving .sqlite and the SQL dump keep every byte
Encrypted databases (SQLCipher etc.)Not supportedThey cannot be opened
Connecting to server databases (MySQL, PostgreSQL, …)Not supportedOnly databases inside the browser are handled
ATTACH DATABASE and loading extensions (load_extension)Not supportedATTACH is refused. Extensions are not part of this build
Automatic saving of your editsNot supportedThey are lost when the page is closed. Press "Save database" after changing

Limits & notes

  • Databases up to 200 MB can be opened. The whole file is loaded into browser memory, so on a device with little memory a smaller file may fail to open.
  • CSV / Excel imports are limited to 100 MB and 3 million cells per file.
  • A script runs at most 200 statements, and one result keeps up to 100,000 rows (or 40 million characters in total). Anything beyond that is neither shown nor exported. Narrow it with LIMIT.
  • Each cell is shown cut at 2,000 characters (the data itself is unchanged).
  • Restoring the earlier state on "Stop" works for databases up to 64 MB. A .sqlite file you already saved is not affected.
  • The database lives in browser memory. Until you save it, closing or reloading the page discards changes.
  • You can open and check files on a phone, but PC is recommended for large databases.

Privacy & safety

Opened files and SQL are processed only inside your browser and are not sent to a server. History lives only in this tab’s memory and is not saved. Usage measurement never includes file names, SQL or data; it uses only the kind of action, a size bucket and the error type.

FAQ

Can I open a SQLite file without installing anything?
Yes, in the browser alone. Drop a .sqlite, .sqlite3 or .db file or pick one, and you can see the table list, rows and CREATE statements. The file does not leave your device.
Can I view the contents of a .db file without writing SQL?
Yes. Pick a table in the list to page through its rows, press a column name to sort, and type text to filter. When you need SQL, write it in "Query" and run it.
Can I query CSV or Excel files with SQL?
Yes. Import them with "Import CSV / Excel as a table", then use SELECT, JOIN and GROUP BY. Results export to CSV, Excel or JSON. Column types are inferred from the values.
How large a file can I open?
Databases up to 200 MB. The whole file is loaded into browser memory, so depending on your device a file below the limit may still fail to open. In that case use another method, such as the sqlite3 command line.
Can I open a password-protected (encrypted) SQLite database?
No. Databases encrypted with SQLCipher and similar are out of scope; the tool reports that it could not be read as SQLite.
Are my changes written back to the original file?
The original file is never modified. After changing, press "Save database (.sqlite)" to export a new file. Closing the page without saving discards the changes.

SQL Studio — Format, Analyze & Convert

Paste SQL to format, minify or analyze it for your dialect. Strings and comments are never altered, UPDATE/DELETE without WHERE and DROP are flagged, and value lists or CSV rows become IN clauses and INSERT statements — all on your device.

No upload

CSV Studio

Open CSV files that are slow or garbled in Excel and view, search and edit them right away in your browser. Combine, split and save as CSV (UTF-8 with BOM, Shift_JIS), Excel or JSON on one screen.

No upload

Excel Cleanup

Tick what to fix and clean up spaces, character widths, dates and numbers across a whole Excel or CSV file at once. Changed cells are highlighted, and you can save as Excel or CSV.

No upload

Dummy Data Generator

Build fictional test data for demos and development. Pick a type per column and export to CSV, TSV, JSON, JSON Lines, SQL INSERT or Excel. Names, addresses and companies are made-up combinations, and emails use only example domains.

No upload

DDL to ER Diagram & DB Docs

Paste CREATE TABLE statements or load files to get an ER diagram with the relations drawn as lines, and table definitions listing each column with its type, NULL, default, key and comment. It reads the common syntax of MySQL, PostgreSQL, SQLite, SQL Server and Oracle, and SQLite .db files too.

No upload

CSV Encoding Fix

Convert CSV files that show garbled text in Excel to UTF-8 with BOM or Shift_JIS, with automatic encoding detection. Mojibake that was already saved, such as “日本語”, can usually be restored too.

No upload

Last updated: