What it is and the problem it solves
SQLite is a free, open-source, embedded relational database engine written in C. It solves the problem of adding persistent, transactional data storage to applications without requiring a separate database server or configuration.
How it works
SQLite is a C library embedded directly into applications. It stores an entire database in a single cross-platform file. It uses file-system locking for concurrency and supports WAL mode for concurrent reads and writes. It enforces access control via file permissions, not internal user accounts.
What works
It implements most of SQL-92 and the relational model. It provides ACID-compliant transactions. It runs serverless and zero-configuration. It supports dynamic typing (with STRICT tables added in 2021) and works across OSes, browsers, and frameworks.
What does not
SQLite omits materialized views. It lacks complete support for triggers and ALTER TABLE statements. It does not enforce type checking by default. It has no built-in user authentication or network interface.
What it changes
SQLite shifts database deployment from client-server infrastructure to static linking. It replaces process coordination with file-system coordination. It moves administration from DBAs to application developers.
Is it worth your time
Yes—if you need a zero-configuration, ACID-compliant relational store inside a single process and can accept its concurrency and feature limits. No—if you require multi-user access, materialized views, or full ALTER TABLE or trigger semantics.
