Small. Fast. Reliable.
Choose any three.

About Documentation Download License Support Purchase |

## SQLite Release 3.6.21 On 2009-12-07

- The SQL output resulting from sqlite3_trace() is now modified to include the values of bound parameters.
- Performance optimizations targeting a specific use case from a single high-profile user of SQLite. A 12% reduction in the number of CPU operations is achieved (as measured by Valgrind). Actual performance improvements in practice may vary depending on workload. Changes include:
  - The ifnull() and coalesce() SQL functions are now implemented using in-line VDBE code rather than calling external functions, so that unused arguments need never be evaluated.
  - The substr() SQL function does not bother to measure the length its entire input string if it is only computing a prefix
  - Unnecessary OP_IsNull, OP_Affinity, and OP_MustBeInt VDBE opcodes are suppressed
  - Various code refactorizations for performance
- The FTS3 extension has undergone a major rework and cleanup. New FTS3 documentation is now available.
- The SQLITE_SECURE_DELETE compile-time option fixed to make sure that content is deleted even when the truncate optimization applies.
- Improvements to "dot-command" handling in the Command Line Interface.
- Other minor bug fixes and documentation enhancements.

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.