Released on 16 Apr 2008
Project description.

SQLite is an in-process library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. The code for SQLite is in the public domain and is thus free for use for any purpose, commercial or private. SQLite is the most widely deployed database in the world with more applications than we can count, including several high-profile projects.

SQLite is an embedded SQL database engine. Unlike most other SQL databases, SQLite does not have a separate server process. SQLite reads and writes directly to ordinary disk files. A complete SQL database with multiple tables, indices, triggers, and views, is contained in a single disk file. The database file format is cross-platform - you can freely copy a database between 32-bit and 64-bit systems or between big-endian and little-endian architectures. These features make SQLite a popular choice as an Application File Format.

SQLite 3.5.8 Changelog
  • Expose SQLite's internal pseudo-random number generator (PRNG) via the sqlite3_randomness() interface
  • New interface sqlite3_context_db_handle() that returns the database connection handle that has invoked an application-defined SQL function.
  • New interface sqlite3_limit() allows size and length limits to be set on a per-connection basis and at run-time.
  • Improved crash-robustness: write the database page size into the rollback journal header.
  • Allow the VACUUM command to change the page size of a database file.
  • The xAccess() method of the VFS is allowed to return -1 to signal a memory allocation error.
  • Performance improvement: The OP_IdxDelete opcode uses unpacked records, obviating the need for one OP_MakeRecord opcode call for each index record deleted.
  • Performance improvement: Constant subexpressions are factored out of loops.
  • Performance improvement: Results of OP_Column are reused rather than issuing multiple OP_Column opcodes.
  • Fix a bug in the RTRIM collating sequence.
  • Fix a bug in the SQLITE_SECURE_DELETE option that was causing Firefox crashes. Make arrangements to always test SQLITE_SECURE_DELETE prior to each release.
  • Other miscellaneous performance enhancements.
  • Other miscellaneous minor bug fixes.