📄 changes.tcl
字号:
<li>Temporary files are now automatically deleted by the operating system when closed. There are no more dangling temporary files on a program crash. (If the OS crashes, fsck will delete the file after reboot under Unix. I do not know what happens under Windows.)</li><li>NOT NULL constraints are honored.</li><li>The COPY command puts NULLs in columns whose data is '\N'.</li><li>In the COPY command, backslash can now be used to escape a newline.</li><li>Added the SANITY_CHECK pragma.</li>}chng {2002 Jan 28 (2.2.5)} {<li>Important bug fix: the IN operator was not working if either the left-hand or right-hand side was derived from an INTEGER PRIMARY KEY.</li><li>Do not escape the backslash '\' character in the output of the <b>sqlite</b> command-line access program.</li>}chng {2002 Jan 22 (2.2.4)} {<li>The label to the right of an AS in the column list of a SELECT can now be used as part of an expression in the WHERE, ORDER BY, GROUP BY, and/or HAVING clauses.</li><li>Fix a bug in the <b>-separator</b> command-line option to the <b>sqlite</b> command.</li><li>Fix a problem with the sort order when comparing upper-case strings against characters greater than 'Z' but less than 'a'.</li><li>Report an error if an ORDER BY or GROUP BY expression is constant.</li>}chng {2002 Jan 16 (2.2.3)} {<li>Fix warning messages in VC++ 7.0. (Patches from nicolas352001)</li><li>Make the library thread-safe. (The code is there and appears to work but has not been stressed.)</li><li>Added the new <b>sqlite_last_insert_rowid()</b> API function.</li>}chng {2002 Jan 13 (2.2.2)} {<li>Bug fix: An assertion was failing when a temporary table with an index had the same name as a permanent table created by a separate process.</li><li>Bug fix: Updates to tables containing an INTEGER PRIMARY KEY and an index could fail.</li>}chng {2002 Jan 9 (2.2.1)} {<li>Bug fix: An attempt to delete a single row of a table with a WHERE clause of "ROWID=x" when no such rowid exists was causing an error.</li><li>Bug fix: Passing in a NULL as the 3rd parameter to <b>sqlite_open()</b> would sometimes cause a coredump.</li><li>Bug fix: DROP TABLE followed by a CREATE TABLE with the same name all within a single transaction was causing a coredump.</li><li>Makefile updates from A. Rottmann</li>}chng {2001 Dec 22 (2.2.0)} {<li>Columns of type INTEGER PRIMARY KEY are actually used as the primary key in underlying B-Tree representation of the table.</li><li>Several obscure, unrelated bugs were found and fixed while implemented the integer primary key change of the previous bullet.</li><li>Added the ability to specify "*" as part of a larger column list in the result section of a SELECT statement. For example: <nobr>"<b>SELECT rowid, * FROM table1;</b>"</nobr>.</li><li>Updates to comments and documentation.</li>}chng {2001 Dec 14 (2.1.7)} {<li>Fix a bug in <b>CREATE TEMPORARY TABLE</b> which was causing the table to be initially allocated in the main database file instead of in the separate temporary file. This bug could cause the library to suffer an assertion failure and it could cause "page leaks" in the main database file.<li>Fix a bug in the b-tree subsystem that could sometimes cause the first row of a table to be repeated during a database scan.</li>}chng {2001 Dec 14 (2.1.6)} {<li>Fix the locking mechanism yet again to prevent <b>sqlite_exec()</b> from returning SQLITE_PROTOCOL unnecessarily. This time the bug was a race condition in the locking code. This change effects both POSIX and Windows users.</li>}chng {2001 Dec 6 (2.1.5)} {<li>Fix for another problem (unrelated to the one fixed in 2.1.4) that sometimes causes <b>sqlite_exec()</b> to return SQLITE_PROTOCOL unnecessarily. This time the bug was in the POSIX locking code and should not effect windows users.</li>}chng {2001 Dec 4 (2.1.4)} {<li>Sometimes <b>sqlite_exec()</b> would return SQLITE_PROTOCOL when it should have returned SQLITE_BUSY.</li><li>The fix to the previous bug uncovered a deadlock which was also fixed.</li><li>Add the ability to put a single .command in the second argument of the sqlite shell</li><li>Updates to the FAQ</li>}chng {2001 Nov 23 (2.1.3)} {<li>Fix the behavior of comparison operators (ex: "<b><</b>", "<b>==</b>", etc.) so that they are consistent with the order of entries in an index.</li><li>Correct handling of integers in SQL expressions that are larger than what can be represented by the machine integer.</li>}chng {2001 Nov 22 (2.1.2)} {<li>Changes to support 64-bit architectures.</li><li>Fix a bug in the locking protocol.</li><li>Fix a bug that could (rarely) cause the database to become unreadable after a DROP TABLE due to corruption to the SQLITE_MASTER table.</li><li>Change the code so that version 2.1.1 databases that were rendered unreadable by the above bug can be read by this version of the library even though the SQLITE_MASTER table is (slightly) corrupted.</li>}chng {2001 Nov 13 (2.1.1)} {<li>Bug fix: Sometimes arbitrary strings were passed to the callback function when the actual value of a column was NULL.</li>}chng {2001 Nov 12 (2.1.0)} {<li>Change the format of data records so that records up to 16MB in size can be stored.</li><li>Change the format of indices to allow for better query optimization.</li><li>Implement the "LIMIT ... OFFSET ..." clause on SELECT statements.</li>}chng {2001 Nov 3 (2.0.8)} {<li>Made selected parameters in API functions <b>const</b>. This should be fully backwards compatible.</li><li>Documentation updates</li><li>Simplify the design of the VDBE by restricting the number of sorters and lists to 1. In practice, no more than one sorter and one list was ever used anyhow. </li>}chng {2001 Oct 21 (2.0.7)} {<li>Any UTF-8 character or ISO8859 character can be used as part of an identifier.</li><li>Patches from Christian Werner to improve ODBC compatibility and to fix a bug in the round() function.</li><li>Plug some memory leaks that use to occur if malloc() failed. We have been and continue to be memory leak free as long as malloc() works.</li><li>Changes to some test scripts so that they work on Windows in addition to Unix.</li>}chng {2001 Oct 19 (2.0.6)} {<li>Added the EMPTY_RESULT_CALLBACKS pragma</li><li>Support for UTF-8 and ISO8859 characters in column and table names.</li><li>Bug fix: Compute correct table names with the FULL_COLUMN_NAMES pragma is turned on.</li>}chng {2001 Oct 14 (2.0.5)} {<li>Added the COUNT_CHANGES pragma.</li><li>Changes to the FULL_COLUMN_NAMES pragma to help out the ODBC driver.</li><li>Bug fix: "SELECT count(*)" was returning NULL for empty tables. Now it returns 0.</li>}chng {2001 Oct 13 (2.0.4)} {<li>Bug fix: an obscure and relatively harmless bug was causing one of the tests to fail when gcc optimizations are turned on. This release fixes the problem.</li>}chng {2001 Oct 13 (2.0.3)} {<li>Bug fix: the <b>sqlite_busy_timeout()</b> function was delaying 1000 times too long before failing.</li><li>Bug fix: an assertion was failing if the disk holding the database file became full or stopped accepting writes for some other reason. New tests were added to detect similar problems in the future.</li><li>Added new operators: <b>&</b> (bitwise-and) <b>|</b> (bitwise-or), <b>~</b> (ones-complement), <b><<</b> (shift left), <b>>></b> (shift right).</li><li>Added new functions: <b>round()</b> and <b>abs()</b>.</li>}chng {2001 Oct 9 (2.0.2)} {<li>Fix two bugs in the locking protocol. (One was masking the other.)</li><li>Removed some unused "#include <unistd.h>" that were causing problems for VC++.</li><li>Fixed <b>sqlite.h</b> so that it is usable from C++</li><li>Added the FULL_COLUMN_NAMES pragma. When set to "ON", the names of columns are reported back as TABLE.COLUMN instead of just COLUMN.</li><li>Added the TABLE_INFO() and INDEX_INFO() pragmas to help support the ODBC interface.</li><li>Added support for TEMPORARY tables and indices.</li>}chng {2001 Oct 2 (2.0.1)} {<li>Remove some C++ style comments from btree.c so that it will compile using compilers other than gcc.</li><li>The ".dump" output from the shell does not work if there are embedded newlines anywhere in the data. This is an old bug that was carried forward from version 1.0. To fix it, the ".dump" output no longer uses the COPY command. It instead generates INSERT statements.</li><li>Extend the expression syntax to support "expr NOT NULL" (with a space between the "NOT" and the "NULL") in addition to "expr NOTNULL" (with no space).</li>}chng {2001 Sep 28 (2.0.0)} {<li>Automatically build binaries for Linux and Windows and put them on the website.</li>}chng {2001 Sep 28 (2.0-alpha-4)} {<li>Incorporate makefile patches form A. Rottmann to use LIBTOOL</li>}chng {2001 Sep 27 (2.0-alpha-3)} {<li>SQLite now honors the UNIQUE keyword in CREATE UNIQUE INDEX. Primary keys are required to be unique.</li><li>File format changed back to what it was for alpha-1</li><li>Fixes to the rollback and locking behavior</li>}chng {2001 Sep 20 (2.0-alpha-2)} {<li>Initial release of version 2.0. The idea of renaming the library to "SQLus" was abandoned in favor of keeping the "SQLite" name and bumping the major version number.</li><li>The pager and btree subsystems added back. They are now the only available backend.</li><li>The Dbbe abstraction and the GDBM and memory drivers were removed.</li><li>Copyright on all code was disclaimed. The library is now in the public domain.</li>}chng {2001 Jul 23 (1.0.32)} {<li>Pager and btree subsystems removed. These will be used in a follow-on SQL server library named "SQLus".</li><li>Add the ability to use quoted strings as table and column names in expressions.</li>}chng {2001 Apr 14 (1.0.31)} {<li>Pager subsystem added but not yet used.</li><li>More robust handling of out-of-memory errors.</li><li>New tests added to the test suite.</li>}chng {2001 Apr 6 (1.0.30)} {<li>Remove the <b>sqlite_encoding</b> TCL variable that was introduced in the previous version.</li><li>Add options <b>-encoding</b> and <b>-tcl-uses-utf</b> to the <b>sqlite</b> TCL command.</li><li>Add tests to make sure that tclsqlite was compiled using Tcl header files and libraries that match.</li>}chng {2001 Apr 5 (1.0.29)} {<li>The library now assumes data is stored as UTF-8 if the --enable-utf8 option is given to configure. The default behavior is to assume iso8859-x, as it has always done. This only makes a difference for LIKE and GLOB operators and the LENGTH and SUBSTR functions.</li><li>If the library is not configured for UTF-8 and the Tcl library is one of the newer ones that uses UTF-8 internally, then a conversion from UTF-8 to iso8859 and back again is done inside the TCL interface.</li>}chng {2001 Apr 4 (1.0.28)} {<li>Added limited support for transactions. At this point, transactions will do table locking on the GDBM backend. There is no support (yet) for rollback or atomic commit.</li><li>Added special column names ROWID, OID, and _ROWID_ that refer to the unique random integer key associated with every row of every table.</li><li>Additional tests added to the regression suite to cover the new ROWID feature and the TCL interface bugs mentioned below.</li><li>Changes to the "lemon" parser generator to help it work better when compiled using MSVC.</li><li>Bug fixes in the TCL interface identified by Oleg Oleinick.</li>}chng {2001 Mar 20 (1.0.27)} {<li>When doing DELETE and UPDATE, the library used to write the record numbers of records to be deleted or updated into a temporary file. This is changed so that the record numbers are held in memory.</li><li>The DELETE command without a WHILE clause just removes the database files from the disk, rather than going through and deleting record by record.</li>}chng {2001 Mar 20 (1.0.26)} {<li>A serious bug fixed on Windows. Windows users should upgrade. No impact to Unix.</li>}chng {2001 Mar 15 (1.0.25)} {<li>Modify the test scripts to identify tests that depend on system load and processor speed and to
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -