Small. Fast. Reliable.
Choose any three.
 
SQLite Release 3.7.16 On 2013-03-18
- Added the PRAGMA foreign_key_check command.
 - Added new extended error codes for all SQLITE_CONSTRAINT errors
 - Added the SQLITE_READONLY_ROLLBACK extended error code for when a database
    cannot be opened because it needs rollback recovery but is read-only.
 - Added SQL functions unicode(A) and char(X1,...,XN).
 - Performance improvements for PRAGMA incremental_vacuum, especially in
    cases where the number of free pages is greater than what will fit on a 
    single trunk page of the freelist.
 - Improved optimization of queries containing aggregate min() or max().
 - Enhance virtual tables so that they can potentially use an index when
    the WHERE clause contains the IN operator.
 - Allow indices to be used for sorting even if prior terms of the index
    are constrained by IN operators in the WHERE clause.
 - Enhance the PRAGMA table_info command so that the "pk" column is an
    increasing integer to show the order of columns in the primary key.
 - Enhance the query optimizer to exploit transitive join constraints.
 - Performance improvements in the query optimizer.
 - Allow the error message from PRAGMA integrity_check to be longer than
    20000 bytes.
 - Improved name resolution for deeply nested queries.
 - Added the test_regexp.c module as a demonstration of how to implement
    the REGEXP operator.
 - Improved error messages in the RTREE extension.
 - Enhance the command-line shell so that a non-zero argument to the
    ".exit" command causes the shell to exit immediately without cleanly
    shutting down the database connection.
 - Improved error messages for invalid boolean arguments to dot-commands
    in the command-line shell.
 - Improved error messages for "foreign key mismatch" showing the names of
    the two tables involved.
 - Remove all uses of umask() in the unix VFS.
 - Added the PRAGMA vdbe_addoptrace and PRAGMA vdbe_debug commands.
 - Change to use strncmp() or the equivalent instead of memcmp() when 
    comparing non-zero-terminated strings.
 - Update cygwin interfaces to omit deprecated API calls.
 - Enhance the spellfix1 extension so that the edit distance cost table can
    be changed at runtime by inserting a string like 'edit_cost_table=TABLE' 
    into the "command" field.
 - Bug fix: repair a long-standing problem that could cause incorrect query
    results in a 3-way or larger join that compared INTEGER fields against TEXT
    fields in two or more places.
    Ticket fc7bd6358f
 - Bug fix: Issue an error message if the 16-bit reference counter on a
    view overflows due to an overly complex query.
 - Bug fix: Avoid leaking memory on LIMIT and OFFSET clauses in deeply
    nested UNION ALL queries.
 - Bug fix: Make sure the schema is up-to-date prior to running pragmas
    table_info, index_list, index_info, and foreign_key_list.
 - SQLITE_SOURCE_ID: 
    "2013-03-18 11:39:23 66d5f2b76750f3520eb7a495f6247206758f5b90"
 - SHA1 for sqlite3.c: 7308ab891ca1b2ebc596025cfe4dc36f1ee89cf6
 
      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.