Small. Fast. Reliable.
Choose any three.
SQLite Release 3.37.0 On 2021-11-27
- STRICT tables provide a prescriptive style of data type management,
for developers who prefer that kind of thing.
- When adding columns that contain a
CHECK constraint or a generated column containing a NOT NULL constraint,
the ALTER TABLE ADD COLUMN now checks new constraints against
preexisting rows in the database and will only proceed if no constraints
- Added the PRAGMA table_list statement.
- CLI enhancements:
- Add the .connection command, allowing the CLI to keep multiple database
connections open at the same time.
- Add the --safe command-line option that disables
dot-commands and SQL statements that might cause side-effects that extend
beyond the single database file named on the command-line.
- Performance improvements when reading SQL statements
that span many lines.
- Added the sqlite3_autovacuum_pages() interface.
- The sqlite3_deserialize() does not and has never worked for the TEMP
database. That limitation is now noted in the documentation.
- The query planner now omits ORDER BY clauses on subqueries and views
if removing those clauses does not change the semantics of the query.
- The generate_series table-valued function extension is modified so that
the first parameter ("START") is now required. This is done as a way to
demonstrate how to write table-valued functions with required parameters.
The legacy behavior is available using the -DZERO_ARGUMENT_GENERATE_SERIES
- Added new sqlite3_changes64() and sqlite3_total_changes64() interfaces.
- Added the SQLITE_OPEN_EXRESCODE flag option to sqlite3_open_v2().
- Use less memory to hold the database schema.
- SQLITE_SOURCE_ID: 2021-11-27 14:13:22 bd41822c7424d393a30e92ff6cb254d25c26769889c1499a18a0b9339f5d6c8a
- SHA3-256 for sqlite3.c: a202a950ab401cda052e81259e96d6e64ad91faaaaf5690d769f64c2ab962f27
A complete list of SQLite releases
in a single page and a chronology are both also available.
A detailed history of every
check-in is available at
SQLite version control site.