Software update: SQLite 3.26.0

Spread the love

SQLite is a database system developed in C that can be used as a database for websites and embedded applications, among other things. According to the developers, SQLite requires no installation and administration, supports databases up to two terabytes in size and stores an entire database in one file. Furthermore, it supports almost the full SQL92 specification and it is easy via, among others Tcl/Tk to guide. The developer released version 3.26.0 earlier this month with the following list of changes:

3.26.0

  • Optimization: When doing an UPDATE on a table with indexes on expressions, do not update the expression indexes if they do not refer to any of the columns of the table being updated.
  • Allow the xBestIndex() method of virtual table implementations to return SQLITE_CONSTRAINT to indicate that the proposed query plan is unusable and should not be given further consideration.
  • Added the SQLITE_DBCONFIG_DEFENSIVE option which disables the ability to create corrupt database files using ordinary SQL.
  • Added support for read-only shadow tables when the SQLITE_DBCONFIG_DEFENSIVE option is enabled.
  • Added the PRAGMA legacy_alter_table command, which if enabled causes the ALTER TABLE command to behave like older version of SQLite (prior to version 3.25.0) for compatibility.
  • Added PRAGMA table_xinfo that works just like PRAGMA table_info except that it also shows hidden columns in virtual tables.
  • Added the explain virtual table as a run-time loadable extension.
  • Add a limit counter to the query planner to prevent excessive sqlite3_prepare() times for certain pathological SQL inputs.
  • Added support for the sqlite3_normalized_sql() interface, when compiling with SQLITE_ENABLE_NORMALIZE.
  • Enhanced triggers so that they can use table-valued functions that exist in schemas other than the schema where the trigger is defined.
  • Enhancements to the CLI:
    • Improvements to the “.help” command.
    • The SQLITE_HISTORY environment variable, if it exists, specifies the name of the command-line editing history file
    • The –deserialize option associated with opening a new database cause the database file to be read into memory and accessed using the sqlite3_deserialize() API. This simplifies running tests on a database without modifying the file on disk.
  • Enhancements to the geopoly extension:
    • Aways stores polygons using the binary format, which is faster and uses less space.
    • Added the geopoly_regular() function.
    • Added the geopoly_ccw() function.
  • Enhancements to the session extension:
    • Added the SQLITE_CHANGESETAPPLY_INVERT flag
    • Added the sqlite3changeset_start_v2() interface and the SQLITE_CHANGESETSTART_INVERT flag.
    • Added the changesetfuzz.c test-case generator utility.

Version number 3.26.0
Release status Final
Operating systems Windows 7, Android, Linux, BSD, macOS, Solaris, UNIX, Windows Server 2008, Windows Server 2012, Windows 8, Windows 10, Windows Server 2016
Website SQLite
Download
License type GPL
You might also like