SQLite Release 3.37.2 On 2022-01-06
En esta página
SQLite Release 3.37.2 On 2022-01-06#
Prior changes from version 3.37.0 (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 are violated.
- 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 compile-time option.
- 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.
Prior changes from version 3.37.1 (2021-12-30):
- Fix a bug introduced by the UPSERT enhancements of version 3.35.0 that can cause incorrect byte-code to be generated for some obscure but valid SQL, possibly resulting in a NULL-pointer dereference.
- Fix an OOB read that can occur in FTS5 when reading corrupt database files.
- Improved robustness of the --safe option in the CLI.
- Other minor fixes to assert() statements and test cases.
Changes in this specific patch release, version 3.37.2 (2022-01-06):
- Fix a bug introduced in version 3.35.0 (2021-03-12) that can cause database corruption if a SAVEPOINT is rolled back while in PRAGMA temp_store=MEMORY mode, and other changes are made, and then the outer transaction commits. Check-in 73c2b50211d3ae26
- Fix a long-standing problem with ON DELETE CASCADE and ON UPDATE CASCADE in which a cache of the bytecode used to implement the cascading change was not being reset following a local DDL change. Check-in 5232c9777fe4fb13.
- Other minor fixes that should not impact production builds. Hashes:
- SQLITE_SOURCE_ID: 2022-01-06 13:25:41 872ba256cbf61d9290b571c0e6d82a20c224ca3ad82971edc46b29818d5d17a0
- SHA3-256 for sqlite3.c: 1bb01c382295cba85ec4685cedc52a7477cdae71cc37f1ad0f48719a17af1e1e
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.