SQLite is een compact, in C ontwikkeld databasesysteem en kan gebruikt worden als database voor onder meer websites en embedded applicaties. Volgens D. Richard Hipp, de ontwikkelaar van SQLite, heeft het databasesysteem geen installatie en administratie nodig, ondersteunt het databases tot een omvang van twee terabyte en wordt een volledige database opgeslagen in één bestand. Het ondersteunt bijna de volledige SQL92-specificatie en is eenvoudig aan te sturen via onder andere Tcl/Tk. De ontwikkelaar heeft onlangs versie 3.3.10 de deur uitgedaan met de volgende lijst van aanpassingen:
Version 3.3.10:Version 3.3.9:
- Fix bugs in the implementation of the new sqlite3_prepare_v2() API that can lead to segfaults.
- Fix 1-second round-off errors in the strftime() function
- Enhance the windows OS layer to provide detailed error codes
- Work around a win2k problem so that SQLite can use single-character database file names
- The user_version and schema_version pragmas correctly set their column names in the result set
- Documentation updates
- Fix bugs in pager.c that could lead to database corruption if two processes both try to recover a hot journal at the same instant
- Added the sqlite3_prepare_v2() API.
- Fixed the ".dump" command in the command-line shell to show indices, triggers and views again.
- Change the table_info pragma so that it returns NULL for the default value if there is no default value
- Support for non-ASCII characters in win95 filenames
- Query optimizer enhancements:
- Optimizer does a better job of using indices to satisfy ORDER BY clauses that sort on the integer primary key
- Use an index to satisfy an IS NULL operator in the WHERE clause
- Fix a bug that was causing the optimizer to miss an OR optimization opportunity
- The optimizer has more freedom to reorder tables in the FROM clause even in there are LEFT joins.
- Extension loading supported added to winCE
- Allow constraint names on the DEFAULT clause in a table definition
- Added the ".bail" command to the command-line shell
- Make CSV (comma separate value) output from the command-line shell more closely aligned to accepted practice
- Experimental FTS2 module added
- Use sqlite3_mprintf() instead of strdup() to avoid libc dependencies
- VACUUM uses a temporary file in the official TEMP folder, not in the same directory as the original database
- The prefix on temporary filenames on windows is changed from "sqlite" to "etilqs".