Every SQLite guide on sqldocs.org, grouped by what you’re trying to do. Guides marked tested were rewritten in October 2026 with every example run against a real SQLite build and the output pasted in.
Jump to: Start here, Install SQLite, The sqlite3 shell, Create and change tables, Insert, update and delete, Query data, Types, strings, dates and JSON, Performance, locking and maintenance, Errors, SQLite from your language, Beyond core SQLite, SQLite compared.
Start here
If you’re new to SQLite, read these in order.
- The SQLite Handbook
- How to Install SQLite3 Step-by-Step (Multi-Platform Guide)
- SQLite Commands tested
- SQLite Cheat Sheet tested
- SQLite CREATE TABLE tested
- SQLite Insert Query
- SQLite SELECT Statement
Install SQLite
Platform-specific setup.
- How to Install SQLite3 Step-by-Step (Multi-Platform Guide)
- Install SQLite3 on Windows
- How to Install SQLite3 on macOS (Built-in Installation Guide)
- How to Install SQLite3 on Ubuntu Using APT
- How to Install SQLite3 on Fedora or CentOS Using DNF/YUM
- Installing SQLite3 on Arch Linux and Manjaro
- How to Install and Run SQLite on Android Using Termux
- How to Install SQLite in a Python Virtual Environment
- SQLite with PowerShell
The sqlite3 shell
Working in the command-line shell.
- SQLite Commands tested
- SQLite Cheat Sheet tested
- SQLite Show Tables tested
- SQLite Describe Table
- Import CSV to SQLite
Create and change tables
Tables, keys, constraints and indexes.
- Create SQLite Database
- SQLite CREATE TABLE tested
- SQLite Create Table If Not Exists
- SQLite Data Types tested
- SQLite Primary Keys
- SQLite AUTOINCREMENT tested
- SQLite Foreign Keys tested
- SQLite UNIQUE Constraint
- SQLite CREATE INDEX tested
- SQLite Alter Table Add Column
- SQLite Delete Column
- SQLite DROP TABLE
- SQLite Views
- SQLite Triggers
- SQLite Attach Database
Insert, update and delete
Changing data.
- SQLite Insert Query
- SQLite INSERT INTO SELECT
- SQLite UPSERT tested
- SQLite RETURNING Clause
- SQLite UPDATE Query
- SQLite Update from Another Table
- SQLite Delete Query
Query data
Reading and filtering data.
- SQLite SELECT Statement
- SQLite WHERE Clause
- SQLite Operators
- SQLite LIKE
- SQLite GLOB Clause
- SQLite DISTINCT Query
- SQLite ORDER BY Clause
- SQLite LIMIT Clause
- SQLite GROUP BY Clause
- SQLite HAVING Clause
- SQLite UNION
- SQLite Window Functions
- SQLite Full Text Search
- SQLite Expressions
- SQLite IF EXISTS
- SQLite Syntax
Types, strings, dates and JSON
Working with values.
- SQLite Data Types tested
- SQLite Boolean tested
- SQLite BLOB Data Type
- SQLite String Concatenation
- SQLite substr() and substring() tested
- SQLite Date and Time tested
- SQLite JSON tested
Performance, locking and maintenance
Running SQLite in production.
- SQLite WAL Mode tested
- SQLite “database is locked” tested
- SQLite PRAGMA tested
- SQLite VACUUM tested
- SQLite CREATE INDEX tested
Errors
Fixes for common error messages.
- SQLite “database is locked” tested
- SQLite Unable to Open Database File
- Database Disk Image is Malformed in SQLite
- SQLite OperationalError
SQLite from your language
Drivers, ORMs and frameworks.
- Python SQLite3 Tutorial tested
- AioSQLite
- SQLAlchemy SQLite
- Django SQLite
- Flask SQLite
- FastAPI SQLite
- SQLite in Node.js tested
- Next.js SQLite
- Prisma SQLite
- Golang SQLite3
- Rust SQLite
- Java SQLite
- C# SQLite
- SQLite Entity Framework
- PHP SQLite
- SQLite in R for Data Analysis using RSQLite
- SQLite and React Native
- Fast and Simple SQLite for React Native with OP-SQLite
- Expo SQLite
- iOS SQLite
Beyond core SQLite
Forks and extensions.
- libSQL tested
- sqlite-vec tested
SQLite compared
When SQLite fits and when another database does.
- SQLite vs MySQL tested
- SQLite vs PostgreSQL tested
- SQLite vs MariaDB tested
- SQLite vs SQL Server
- SQLite vs MongoDB
- SQLite vs Redis tested
- SQLite vs Core Data
