Convert CSV to SQLite — in your browser, nothing uploaded
A CSV is a flat sheet of text; a SQLite database is a typed, queryable file. The gap between them is usually a Python script or a command-line import that makes you declare every column by hand. Here it's a two-minute job in a browser tab: open the CSV, glance at the types the wizard picked, and download a real .sqlite file. Your data never leaves the machine.
How to convert a CSV to SQLite
- Open your CSV. On the editor, click Import CSV — or just drop the .csv onto the page. You can also paste rows straight into the wizard.
- Check the column types. The wizard surveys every column and proposes
INTEGER,REALorTEXT. Each has a dropdown — override any guess before the table is built. - Create the table. Name it and create it. It opens in the grid, where you can fix a cell, add a column or run a quick
SELECTbefore exporting. - Export the .sqlite. Click ⬇ .sqlite (certified). A fresh database file is assembled in the tab and downloaded.
Why the column-typing step matters
Most CSV importers either make everything text or guess from the first row and get it wrong the moment row 900 breaks the pattern. editsqlite reads the whole column before deciding: every non-empty value has to agree. All whole numbers give you INTEGER; a single decimal anywhere makes it REAL; one stray word makes it TEXT. The guess is a starting point, not a verdict — you set the final type yourself, and a value that can't honour it is kept as text instead of being mangled, the same forgiveness SQLite itself shows.
Good to know
- Quoted fields with commas, line breaks and doubled quotes parse correctly (RFC-4180).
- Empty cells become
NULL, not empty strings — soIS NULLworks as you'd expect afterward. - Very wide single rows (over ~4KB) aren't supported yet; ordinary spreadsheet rows are fine.
- The finished database is a normal SQLite file — open it anywhere, and it passes
PRAGMA integrity_check.