Released on 14 Dec 2007
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.4 Changelog
  • Fix a critical bug in UPDATE or DELETE that occurs when anOR REPLACE clause or a trigger causes rows in the same table tobe deleted as side effects. (See ticket #2832.) The most likelyresult of this bug is a segmentation fault, though databasecorruption is a possibility.
  • Bring the processing of ORDER BY into compliance with the SQL standard for case where a result alias and a table column nameare in conflict. Correct behavior is to prefer the result alias.Older versions of SQLite incorrectly picked the table column.(See ticket #2822.)
  • The VACUUM command preservesthe setting of the legacy_file_format pragma.(Ticket #2804.)
  • Productize and officially support the group_concat() SQL function.
  • Better optimization of some IN operator expressions.
  • Add the ability to change the auto_vacuum status of adatabase by setting the auto_vaccum pragma and VACUUMing the database.
  • Prefix search in FTS3 is much more efficient.
  • Relax the SQL statement length restriction in the CLI so thatthe ".dump" output of databases with very large BLOBs and strings canbe played back to recreate the database.
  • Other small bug fixes and optimizations.