📄 changes.html
字号:
<li>Documentation updates</li></ul></p><a name="version_3_1_2"></a><h3>2005 February 15 (3.1.2)</h3><p><ul><li>Fix a bug that can lead to database corruption if there are twoopen connections to the same database and one connection does a VACUUMand the second makes some change to the database.</li><li>Allow "?" parameters in the LIMIT clause.</li><li>Fix VACUUM so that it works with AUTOINCREMENT.</li><li>Fix a race condition in AUTOVACUUM that can lead to corrupt databases</li><li>Add a numeric version number to the sqlite3.h include file.</li><li>Other minor bug fixes and performance enhancements.</li></ul></p><a name="version_2_8_16"></a><h3>2005 February 15 (2.8.16)</h3><p><ul><li>Fix a bug that can lead to database corruption if there are twoopen connections to the same database and one connection does a VACUUMand the second makes some change to the database.</li><li>Correctly handle quoted names in CREATE INDEX statements.</li><li>Fix a naming conflict between sqlite.h and sqlite3.h.</li><li>Avoid excess heap usage when copying expressions.</li><li>Other minor bug fixes.</li></ul></p><h3>2005 February 1 (3.1.1 BETA)</h3><p><ul><li>Automatic caching of prepared statements in the TCL interface</li><li>ATTACH and DETACH as well as some other operations cause existing prepared statements to expire.</li><li>Numerious minor bug fixes</li></ul></p><h3>2005 January 21 (3.1.0 ALPHA)</h3><p><ul><li>Autovacuum support added</li><li>CURRENT_TIME, CURRENT_DATE, and CURRENT_TIMESTAMP added</li><li>Support for the EXISTS clause added.</li><li>Support for correlated subqueries added.</li><li>Added the ESCAPE clause on the LIKE operator.</li><li>Support for ALTER TABLE ... RENAME TABLE ... added</li><li>AUTOINCREMENT keyword supported on INTEGER PRIMARY KEY</li><li>Many SQLITE_OMIT_ macros inserts to omit features at compile-time and reduce the library footprint.</li><li>The REINDEX command was added.</li><li>The engine no longer consults the main table if it can get all the information it needs from an index.</li><li>Many nuisance bugs fixed.</li></ul></p><a name="version_3_0_8"></a><h3>2004 October 11 (3.0.8)</h3><p><ul><li>Add support for DEFERRED, IMMEDIATE, and EXCLUSIVE transactions.</li><li>Allow new user-defined functions to be created when there arealready one or more precompiled SQL statements.<li><li>Fix portability problems for Mingw/MSYS.</li><li>Fix a byte alignment problem on 64-bit Sparc machines.</li><li>Fix the ".import" command of the shell so that it ignores \rcharacters at the end of lines.</li><li>The "csv" mode option in the shell puts strings inside double-quotes.</li><li>Fix typos in documentation.</li><li>Convert array constants in the code to have type "const".</li><li>Numerous code optimizations, specially optimizations designed tomake the code footprint smaller.</li></ul></p><a name="version_3_0_7"></a><h3>2004 September 18 (3.0.7)</h3><p><ul><li>The BTree module allocates large buffers using malloc() instead of off of the stack, in order to play better on machines with limited stack space.</li><li>Fixed naming conflicts so that versions 2.8 and 3.0 can be linked and used together in the same ANSI-C source file.</li><li>New interface: sqlite3_bind_parameter_index()</li><li>Add support for wildcard parameters of the form: "?nnn"</li><li>Fix problems found on 64-bit systems.</li><li>Removed encode.c file (containing unused routines) from the version 3.0 source tree.</li><li>The sqlite3_trace() callbacks occur before each statement is executed, not when the statement is compiled.</li><li>Makefile updates and miscellaneous bug fixes.</li></ul></p><h3>2004 September 02 (3.0.6 beta)</h3><p><ul><li>Better detection and handling of corrupt database files.</li><li>The sqlite3_step() interface returns SQLITE_BUSY if it is unable to commit a change because of a lock</li><li>Combine the implementations of LIKE and GLOB into a single pattern-matching subroutine.</li><li>Miscellaneous code size optimizations and bug fixes</li></ul></p><h3>2004 August 29 (3.0.5 beta)</h3><p><ul><li>Support for ":AAA" style bind parameter names.</li><li>Added the new sqlite3_bind_parameter_name() interface.</li><li>Support for TCL variable names embedded in SQL statements in the TCL bindings.</li><li>The TCL bindings transfer data without necessarily doing a conversion to a string.</li><li>The database for TEMP tables is not created until it is needed.</li><li>Add the ability to specify an alternative temporary file directory using the "sqlite_temp_directory" global variable.</li><li>A compile-time option (SQLITE_BUSY_RESERVED_LOCK) causes the busy handler to be called when there is contention for a RESERVED lock.</li><li>Various bug fixes and optimizations</li></ul></p><h3>2004 August 8 (3.0.4 beta)</h3><p><ul><li>CREATE TABLE and DROP TABLE now work correctly as prepared statements.</li><li>Fix a bug in VACUUM and UNIQUE indices.</li><li>Add the ".import" command to the command-line shell.</li><li>Fix a bug that could cause index corruption when an attempt to delete rows of a table is blocked by a pending query.</li><li>Library size optimizations.</li><li>Other minor bug fixes.</li></ul></p><a name="version_2_8_15"></a><h3>2004 July 22 (2.8.15)</h3><p><ul><li>This is a maintenance release only. Various minor bugs have beenfixed and some portability enhancements are added.</li></ul></p><h3>2004 July 22 (3.0.3 beta)</h3><p><ul><li>The second beta release for SQLite 3.0.</li><li>Add support for "PRAGMA page_size" to adjust the page size ofthe database.</li><li>Various bug fixes and documentation updates.</li></ul></p><h3>2004 June 30 (3.0.2 beta)</h3><p><ul><li>The first beta release for SQLite 3.0.</li></ul></p><h3>2004 June 22 (3.0.1 alpha)</h3><p><ul><li><font color="red"><b> *** Alpha Release - Research And Testing Use Only ***</b></font><li>Lots of bug fixes.</li></ul></p><h3>2004 June 18 (3.0.0 alpha)</h3><p><ul><li><font color="red"><b> *** Alpha Release - Research And Testing Use Only ***</b></font><li>Support for internationalization including UTF-8, UTF-16, and user defined collating sequences.</li><li>New file format that is 25% to 35% smaller for typical use.</li><li>Improved concurrency.</li><li>Atomic commits for ATTACHed databases.</li><li>Remove cruft from the APIs.</li><li>BLOB support.</li><li>64-bit rowids.</li><li><a href="version3.html">More information</a>.</ul></p><a name="version_2_8_14"></a><h3>2004 June 9 (2.8.14)</h3><p><ul><li>Fix the min() and max() optimizer so that it works when the FROM clause consists of a subquery.</li><li>Ignore extra whitespace at the end of of "." commands in the shell.</li><li>Bundle sqlite_encode_binary() and sqlite_decode_binary() with the library.</li><li>The TEMP_STORE and DEFAULT_TEMP_STORE pragmas now work.</li><li>Code changes to compile cleanly using OpenWatcom.</li><li>Fix VDBE stack overflow problems with INSTEAD OF triggers and NULLs in IN operators.</li><li>Add the global variable sqlite_temp_directory which if set defines the directory in which temporary files are stored.</li><li>sqlite_interrupt() plays well with VACUUM.</li><li>Other minor bug fixes.</li></ul></p><a name="version_2_8_13"></a><h3>2004 March 8 (2.8.13)</h3><p><ul><li>Refactor parts of the code in order to make the code footprint smaller. The code is now also a little bit faster.</li><li>sqlite_exec() is now implemented as a wrapper around sqlite_compile() and sqlite_step().</li><li>The built-in min() and max() functions now honor the difference between NUMERIC and TEXT datatypes. Formerly, min() and max() always assumed their arguments were of type NUMERIC.</li><li>New HH:MM:SS modifier to the built-in date/time functions.</li><li>Experimental sqlite_last_statement_changes() API added. Fixed the the last_insert_rowid() function so that it works correctly with triggers.</li><li>Add functions prototypes for the database encryption API.</li><li>Fix several nuisance bugs.</li></ul></p><a name="version_2_8_12"></a><h3>2004 February 8 (2.8.12)</h3><p><ul><li>Fix a bug that will might corrupt the rollback journal if a power failure or external program halt occurs in the middle of a COMMIT. The corrupt journal can lead to database corruption when it is rolled back.</li><li>Reduce the size and increase the speed of various modules, especially the virtual machine.</li><li>Allow "<expr> IN <table>" as a shorthand for "<expr> IN (SELECT * FROM <table>".</li><li>Optimizations to the sqlite_mprintf() routine.</li><li>Make sure the MIN() and MAX() optimizations work within subqueries.</li></ul></p><a name="version_2_8_11"></a><h3>2004 January 14 (2.8.11)</h3><p><ul><li>Fix a bug in how the IN operator handles NULLs in subqueries. The bug was introduced by the previous release.</li></ul></p><a name="version_2_8_10"></a><h3>2004 January 13 (2.8.10)</h3><p><ul><li>Fix a potential database corruption problem on Unix caused by the fact that all posix advisory locks are cleared whenever you close() a file. The work around it to embargo all close() calls while locks are outstanding.</li><li>Performance enhancements on some corner cases of COUNT(*).</li><li>Make sure the in-memory backend response sanely if malloc() fails.</li><li>Allow sqlite_exec() to be called from within user-defined SQL functions.</li><li>Improved accuracy of floating-point conversions using "long double".</li><li>Bug fixes in the experimental date/time functions.</li></ul></p><a name="version_2_8_9"></a><h3>2004 January 5 (2.8.9)</h3><p><ul><li>Fix a 32-bit integer overflow problem that could result in corrupt indices in a database if large negative numbers (less than -2147483648) were inserted into a indexed numeric column.</li><li>Fix a locking problem on multi-threaded Linux implementations.</li><li>Always use "." instead of "," as the decimal point even if the locale requests ",".</li><li>Added UTC to localtime conversions to the experimental date/time functions.</li><li>Bug fixes to date/time functions.</li></ul></p><a name="version_2_8_8"></a><h3>2003 December 17 (2.8.8)</h3><p><ul><li>Fix a critical bug introduced into 2.8.0 which could cause database corruption.</li><li>Fix a problem with 3-way joins that do not use indices</li><li>The VACUUM command now works with the non-callback API</li><li>Improvements to the "PRAGMA integrity_check" command</li></ul></p><a name="version_2_8_7"></a><h3>2003 December 4 (2.8.7)</h3><p><ul><li>Added experimental sqlite_bind() and sqlite_reset() APIs.</li><li>If the name of the database is an empty string, open a new database in a temporary file that is automatically deleted when the database is closed.</li><li>Performance enhancements in the lemon-generated parser</li><li>Experimental date/time functions revised.</li><li>Disallow temporary indices on permanent tables.</li><li>Documentation updates and typo fixes</li><li>Added experimental sqlite_progress_handler() callback API</li><li>Removed support for the Oracle8 outer join syntax.</li><li>Allow GLOB and LIKE operators to work as functions.</li><li>Other minor documentation and makefile changes and bug fixes.</li></ul></p><a name="version_2_8_6"></a><h3>2003 August 21 (2.8.6)</h3><p><ul><li>Moved the CVS repository to www.sqlite.org</li><li>Update the NULL-handling documentation.</li><li>Experimental date/time functions added.</li><li>Bug fix: correctly evaluate a view of a view without segfaulting.</li><li>Bug fix: prevent database corruption if you dropped a trigger that had the same name as a table.</li><li>Bug fix: allow a VACUUM (without segfaulting) on an empty database after setting the EMPTY_RESULT_CALLBACKS pragma.</li><li>Bug fix: if an integer value will not fit in a 32-bit int, store it in a double instead.</li><li>Bug fix: Make sure the journal file directory entry is committed to disk before writing the database file.</li></ul></p><a name="version_2_8_5"></a><h3>2003 July 22 (2.8.5)</h3><p><ul><li>Make LIMIT work on a compound SELECT statement.</li><li>LIMIT 0 now shows no rows. Use LIMIT -1 to see all rows.</li><li>Correctly handle comparisons between an INTEGER PRIMARY KEY and a floating point number.</li><li>Fix several important bugs in the new ATTACH and DETACH commands.</li><li>Updated the <a href="nulls.html">NULL-handling document</a>.</li> <li>Allow NULL arguments in sqlite_compile() and sqlite_step().</li><li>Many minor bug fixes</li></ul></p><a name="version_2_8_4"></a><h3>2003 June 29 (2.8.4)</h3><p><ul><li>Enhanced the "PRAGMA integrity_check" command to verify indices.</li><li>Added authorization hooks for the new ATTACH and DETACH commands.</li><li>Many documentation updates</li><li>Many minor bug fixes</li></ul></p><a name="version_2_8_3"></a><h3>2003 June 4 (2.8.3)</h3><p><ul><li>Fix a problem that will corrupt the indices on a table if you do an INSERT OR REPLACE or an UPDATE OR REPLACE on a table that contains an INTEGER PRIMARY KEY plus one or more indices.</li>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -