Small. Fast. Reliable.Choose any three. Home Menu About Documentation Download License Support Purchase Search About Documentation Download Support Purchase Search Documentation Search Changelog Alphabetical List Of Documents See Also: Categorical Document List Books About SQLite Permuted Title Index Website Keyword Index 35% Faster Than The Filesystem 8+3 Filenames About SQLite Alphabetical List Of SQLite Documents ALTER TABLE An Asynchronous I/O Module For SQLite An Introduction To The SQLite C/C++ Interface ANALYZE Android Bindings Application-Defined SQL Functions Appropriate Uses For SQLite Architecture of SQLite Atomic Commit In SQLite ATTACH DATABASE Automatic Undo/Redo With SQLite Benefits of SQLite As A File Format Books About SQLite Built-in Aggregate Functions Built-In Mathematical SQL Functions Built-In Scalar SQL Functions C/C++ Interface For SQLite Version 3 C/C++ Interface For SQLite Version 3 (old) Change in Default Page Size in SQLite Version 3.12.0 Clustered Indexes and the WITHOUT ROWID Optimization Command Line Shell For SQLite Compile-time Options Constraint Conflict Resolution in SQLite CREATE INDEX CREATE TABLE CREATE TRIGGER CREATE VIEW CREATE VIRTUAL TABLE Custom Builds Of SQLite Database File Format Database Object Name Resolution Datatypes In SQLite Datatypes In SQLite version 2 Date And Time Functions Defense Against The Dark Arts DELETE DETACH Deterministic SQL Functions Distinctive Features Of SQLite DROP INDEX DROP TABLE DROP TRIGGER DROP VIEW Dynamic Memory Allocation In SQLite EXPLAIN EXPLAIN QUERY PLAN Features Of SQLite File Format Changes in SQLite File Locking And Concurrency In SQLite Version 3 Floating Point Numbers Full-Featured SQL Generated Columns High Reliability Hints for Debugging SQLite History Of SQLite Releases How SQLite Is Tested How SQLite Works How To Compile SQLite How To Corrupt An SQLite Database File How To Download Canonical SQLite Source Code Implementation Limits For SQLite Imposter Tables In-Memory Databases Indexes On Expressions INSERT Internal Versus External BLOBs Invalid UTF Policy Isolation In SQLite JSON Functions And Operators List of SQLite Syntax Diagrams List Of Virtual Tables LoC Recommended Storage Format Long Term Support Maintaining Private Branches Of SQLite Many Small Queries Are Efficient In SQLite Measuring and Reducing CPU Usage in SQLite Memory-Mapped I/O Most Widely Deployed SQL Database Engine NUL Characters In Strings NULL Handling in SQLite Partial Indexes Pointer Passing Interfaces Powersafe Overwrite Pragma statements supported by SQLite Profiling SQL Queries Quality Management Query Language Understood by SQLite Query Planning Quirks, Caveats, and Gotchas In SQLite Recent SQLite News Recovering Data From A Corrupt SQLite Database REINDEX Release History Of SQLite REPLACE Result and Error Codes RETURNING Row Values Rowid Tables Run-Time Loadable Extensions Savepoints SELECT SQL Comment Syntax SQL Features That SQLite Does Not Implement SQL Language Expressions sqldiff.exe: Database Difference Utility SQLite Archive Files SQLite Archiver (sqlar.exe) SQLite As An Application File Format SQLite Autoincrement SQLite Backup API SQLite Changes From Version 3.4.2 To 3.5.0 SQLite Changes From Version 3.5.9 To 3.6.0 SQLite Consortium SQLite Copyright SQLite Database Speed Comparison SQLite Developers SQLite Documentation SQLite Download Page SQLite Foreign Key Support SQLite Frequently Asked Questions SQLite FTS3 and FTS4 Extensions SQLite FTS5 Extension SQLite Home Page SQLite In 5 Minutes Or Less SQLite is a Self Contained System SQLite Is Serverless SQLite Is Transactional SQLite Keywords SQLite Library Footprint SQLite Older News SQLite Over a Network, Caveats and Considerations SQLite Pro Support SQLite Requirements SQLite Session Module C/C++ Interface SQLite Shared-Cache Mode SQLite Site Map SQLite Support Options SQLite Unlock-Notify API SQLite Version 3 Overview SQLite's Built-in printf() SQLite: Single File Database STRICT Tables Swarmvtab Virtual Table Syntax Diagrams For SQLite System.Data.SQLite Temporary Files Used By SQLite TH3 The Advantages Of Flexible Typing The Bytecode() And Tables_Used() Table-Valued Functions The C language interface to SQLite Version 2 The Carray() Table-Valued Function The Checksum VFS Shim The COMPLETION() Table-Valued Function The CSV Virtual Table The dbhash.exe Utility Program The DBSTAT Virtual Table The Error And Warning Log The Fossil Version Control System The generate_series Table-Valued Function The Geopoly Interface To The SQLite R*Tree Module The INDEXED BY Clause The Lemon LALR(1) Parser Generator The Next-Generation Query Planner The ON CONFLICT Clause The RBU Extension The Schema Table The Session Extension The Spellfix1 Virtual Table The SQLite Amalgamation The SQLite Bytecode Engine The SQLite OS Interface or "VFS" The SQLite Query Optimizer Overview The SQLite R*Tree Module The SQLite Zipfile Module The sqlite3_analyzer.exe Utility Program The SQLITE_DBPAGE Virtual Table The SQLITE_MEMSTAT Virtual Table The SQLITE_STMT Virtual Table The Tcl interface to the SQLite library The UINT Collating Sequence The UNION Virtual Table The Use Of assert() In SQLite The Virtual Database Engine of SQLite The Virtual Table Mechanism Of SQLite The WITH Clause Transaction Uniform Resource Identifiers UPDATE UPSERT Using SQLite In Multi-Threaded Applications VACUUM Version Numbers in SQLite Vulnerabilities WAL-mode File Format Website Keyword Index Well-Known Users Of SQLite What If OpenDocument Used SQLite? Why Is SQLite Coded In C Why SQLite Does Not Use Git Window Functions Write-Ahead Logging Zero-Configuration