From: drh Date: Sat, 18 Sep 2004 18:00:23 +0000 (+0000) Subject: Up the version number and prepare documentation files for the 3.0.7 release. (CVS... X-Git-Tag: version-3.6.10~4178 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2d7c0609ed464e7d2f067f675fdee47af28cc0f4;p=thirdparty%2Fsqlite.git Up the version number and prepare documentation files for the 3.0.7 release. (CVS 1969) FossilOrigin-Name: 63e4ed3cc698d660867c297cbedfc25f9eb7c40d --- diff --git a/VERSION b/VERSION index 818bd47abf..2451c27caf 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -3.0.6 +3.0.7 diff --git a/manifest b/manifest index 7adf0d536d..2f2d081ebd 100644 --- a/manifest +++ b/manifest @@ -1,9 +1,9 @@ -C Always\sinclude\s-lpthread\son\slink\slines\seven\sif\sit\sis\snot\sneeded.\s(CVS\s1968) -D 2004-09-17T21:35:31 +C Up\sthe\sversion\snumber\sand\sprepare\sdocumentation\sfiles\sfor\sthe\s3.0.7\srelease.\s(CVS\s1969) +D 2004-09-18T18:00:24 F Makefile.in 76f8790c727cdbe2e1bef19c9c72b6e5da9cb9d8 F Makefile.linux-gcc a9e5a0d309fa7c38e7c14d3ecf7690879d3a5457 F README f1de682fbbd94899d50aca13d387d1b3fd3be2dd -F VERSION d28cfc2e7714a747851e50cc1a5ee8ab0ded7a78 +F VERSION 0aeddfe96f008f6cbe2c7167a782f3133e118d8d F aclocal.m4 7daea4c35e88de30d5a3f6f7a2ab99720e803bbd F art/SQLite.eps 9b43cc99cfd2be687d386faea6862ea68d6a72b2 F art/SQLite.gif 1bbb94484963f1382e27e1c5e86dd0c1061eba2b @@ -217,7 +217,7 @@ F www/audit.tcl 90e09d580f79c7efec0c7d6f447b7ec5c2dce5c0 F www/c_interface.tcl 83b39203e1ded4c2dab97f42edf31279a308efcb F www/capi3.tcl 5c1cb163f4d2a54e2d0e22dcc399dd71245c8b89 F www/capi3ref.tcl 893977e2b1c8ae47a441335bc124cdc6d5fdbe95 -F www/changes.tcl 3641bc28b86b40c82d546727da45ea0f0aa9a9f4 +F www/changes.tcl 16a490bbe5520705861abf36387a5e6b8c18456a F www/common.tcl f786e6be86fb2627ceb30e770e9efa83b9c67a3a F www/conflict.tcl fb8a2ba83746c7fdfd9e52fa7f6aaf5c422b8246 F www/copyright-release.html 294e011760c439c44951a6bfecd4c81a1ae359e8 @@ -225,21 +225,21 @@ F www/copyright-release.pdf cfca3558fc97095e57c6117d08f1f5b80d95125a F www/copyright.tcl 82c9670c7ddb0311912ab7fe24703f33c531066c F www/datatype3.tcl 2bb7dbfa4dd518a6e5fb3cb1cd8296797976d205 F www/datatypes.tcl 566004b81c36877397ddbe6e1907aae6065f6b41 -F www/docs.tcl 095b5718ec044156af477061566ea25632624b56 +F www/docs.tcl 4b5f7fca464e66ed7f929063a8b2b9e101ba902d F www/download.tcl 958931d67680a2ff7044d5ed77ced1825a2a8c63 F www/dynload.tcl 02eb8273aa78cfa9070dd4501dca937fb22b466c -F www/faq.tcl 3a1776818d9bd973ab0c3048ec7ad6b1ad091ae5 +F www/faq.tcl 8cf9f59fd93868c9954223a99db244c9975fa43b F www/fileformat.tcl f71a06a0d533c7df408539c64113b4adeaf29764 F www/formatchng.tcl d1dfecedfb25e122ab513a1e0948b15cb4f0be46 -F www/index.tcl 618733d540dcf28226cc8eb00816f0baaa03064d +F www/index.tcl 9c83cace23dc98be760c349a120b797f4a3292d7 F www/lang.tcl 604683def6e987db1703faf580d9b2150905fda1 F www/lockingv3.tcl afcd22f0f063989cff2f4d57bbc38d719b4c6e75 F www/mingw.tcl d96b451568c5d28545fefe0c80bee3431c73f69c F www/nulls.tcl ede975a29def48838c606d4a0c0185d44f90a789 -F www/oldnews.tcl fbbdbb64ed602b0c92b03498578f7ac70f47753d +F www/oldnews.tcl 6566f0a25fa6244ec68d0cf8cc5af2318c6bba1e F www/omitted.tcl 7bd62b6f0f53b60c5360895b16b3af8407bbca03 F www/opcode.tcl e8c421fd2c70c503b25cedb3f9617a1f387ac7ea -F www/quickstart.tcl 4e97bef825e6a4153c43afb9f97235fc4da278ab +F www/quickstart.tcl 2ed129615479870b9f1f8b1527f21ebfcfb71e76 F www/speed.tcl 19cf0c1bf73c4b534dfafc95b3eacff4825740b4 F www/sqlite.tcl b51fd15f0531a54874de785a9efba323eecd5975 F www/support.tcl 96c8324cea27b5ded53ff5c60c127ba2053f688e @@ -247,7 +247,7 @@ F www/tclsqlite.tcl 560ecd6a916b320e59f2917317398f3d59b7cc25 F www/vdbe.tcl 59288db1ac5c0616296b26dce071c36cb611dfe9 F www/version3.tcl 092a01f5ef430d2c4acc0ae558d74c4bb89638a0 F www/whentouse.tcl a8335bce47cc2fddb07f19052cb0cb4d9129a8e4 -P 10b5e5173339cc7f052aace1b4056a057afe3e66 -R 8816ed45991f1ef6103b7b8a111b1d35 +P 46a96890f7008157bc3784fa7c8680edf6266673 +R 9332f2e0a7f749af2edc4a6fdcc065cd U drh -Z b109fb1b1eb544c33f3008b88b47c374 +Z 80e51f84d0f17d39d17db896014a47fe diff --git a/manifest.uuid b/manifest.uuid index 157772e853..1d2e66a7f0 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -46a96890f7008157bc3784fa7c8680edf6266673 \ No newline at end of file +63e4ed3cc698d660867c297cbedfc25f9eb7c40d \ No newline at end of file diff --git a/www/changes.tcl b/www/changes.tcl index 6b948571cb..c6b8adad35 100644 --- a/www/changes.tcl +++ b/www/changes.tcl @@ -21,6 +21,22 @@ proc chng {date desc} { puts "

" } +chng {2004 September 18 (3.0.7)} { +
  • 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.
  • +
  • Fixed naming conflicts so that versions 2.8 and 3.0 can be + linked and used together in the same ANSI-C source file.
  • +
  • New interface: sqlite3_bind_parameter_index()
  • +
  • Add support for wildcard parameters of the form: "?nnn"
  • +
  • Fix problems found on 64-bit systems.
  • +
  • Removed encode.c file (containing unused routines) from the + version 3.0 source tree.
  • +
  • The sqlite3_trace() callbacks occur before each statement + is executed, not when the statement is compiled.
  • +
  • Makefile updates and miscellaneous bug fixes.
  • +} + chng {2004 September 02 (3.0.6 beta)} {
  • Better detection and handling of corrupt database files.
  • The sqlite3_step() interface returns SQLITE_BUSY if it is unable diff --git a/www/docs.tcl b/www/docs.tcl index 828a34aad5..e8cb423d19 100644 --- a/www/docs.tcl +++ b/www/docs.tcl @@ -1,7 +1,7 @@ # This script generates the "docs.html" page that describes various # sources of documentation available for SQLite. # -set rcsid {$Id: docs.tcl,v 1.5 2004/06/17 19:04:17 drh Exp $} +set rcsid {$Id: docs.tcl,v 1.6 2004/09/18 18:00:24 drh Exp $} source common.tcl header {SQLite Documentation} puts { @@ -19,6 +19,10 @@ proc doc {name url desc} { puts {} } +doc {SQLite In 5 Minutes Or Less} {quickstart.html} { + A very quick introduction to programming with SQLite. +} + doc {SQL Syntax} {lang.html} { This document describes the SQL language that is understood by SQLite. diff --git a/www/faq.tcl b/www/faq.tcl index d60a2643fc..7db3ae4611 100644 --- a/www/faq.tcl +++ b/www/faq.tcl @@ -1,7 +1,7 @@ # # Run this script to generated a faq.html output file # -set rcsid {$Id: faq.tcl,v 1.24 2004/05/31 15:06:30 drh Exp $} +set rcsid {$Id: faq.tcl,v 1.25 2004/09/18 18:00:24 drh Exp $} source common.tcl header {SQLite Frequently Asked Questions} @@ -55,14 +55,16 @@ INSERT INTO t1 VALUES((SELECT max(a) FROM t1)+1,123); sqlite_last_insert_rowid() which will return the integer key for the most recent insert operation. See the API documentation for details.

    + +

    SQLite version 3.0 expands the size of the rowid to 64 bits.

    } faq { What datatypes does SQLite support? } { -

    SQLite is typeless. All data is stored as null-terminated strings. - The datatype information that follows the column name in CREATE TABLE - statements is ignored (mostly). You can put any type of data you want +

    SQLite ignores + the datatype information that follows the column name in CREATE TABLE. + You can put any type of data you want into any column, without regard to the declared datatype of that column.

    @@ -70,14 +72,17 @@ faq { Such columns must hold an integer. An attempt to put a non-integer value into an INTEGER PRIMARY KEY column will generate an error.

    -

    There is a page on datatypes in SQLite +

    There is a page on datatypes in SQLite + version 2.8 + and another for version 3.0 that explains this concept further.

    } faq { SQLite lets me insert a string into a database column of type integer! } { -

    This is a feature, not a bug. SQLite is typeless. Any data can be +

    This is a feature, not a bug. SQLite does not enforce data type + constraints. Any data can be inserted into any column. You can put arbitrary length strings into integer columns, floating point numbers in boolean columns, or dates in character columns. The datatype you assign to a column in the @@ -106,7 +111,9 @@ INSERT INTO t1 VALUES('0.0'); INSERT INTO t2 VALUES(0.0); this case, the constants 0 and 0.0 are treated a strings which means that they are distinct.

    -

    There is a page on datatypes in SQLite +

    There is a page on datatypes in SQLite + version 2.8 + and another for version 3.0 that explains this concept further.

    } @@ -138,7 +145,9 @@ SELECT count(*) FROM t3 WHERE b=='00'; is done against '00'. '0'!='00' so the WHERE clause returns FALSE and the count is zero.

    -

    There is a page on datatypes in SQLite +

    There is a page on datatypes in SQLite + version 2.8 + and another for version 3.0 that explains this concept further.

    } @@ -307,23 +316,14 @@ faq { Are there any known size limits to SQLite databases? } {

    As of version 2.7.4, - SQLite can handle databases up to 2^41 bytes (2 terabytes) + SQLite can handle databases up to 241 bytes (2 terabytes) in size on both Windows and Unix. Older version of SQLite - were limited to databases of 2^31 bytes (2 gigabytes).

    - -

    SQLite arbitrarily limits the amount of data in one row to 1 megabyte. - There is a single #define in the source code that can be changed to raise - this limit as high as 16 megabytes if desired.

    - -

    There is a theoretical limit of about 2^32 (4 billion) rows - in a single table, but this limit has never been tested.

    - There is also a theoretical limit of about 2^32 - tables and indices.

    + were limited to databases of 231 bytes (2 gigabytes).

    -

    The name and "CREATE TABLE" statement for a table must fit entirely - within a 1-megabyte row of the SQLITE_MASTER table. Other than this, - there are no constraints on the length of the name of a table, or on the - number of columns, etc. Indices are similarly unconstrained.

    +

    SQLite version 2.8 limits the amount of data in one row to + 1 megabyte. SQLite version 3.0 has no limit on the amount of + data that can be stored in a single row. +

    The names of tables, indices, view, triggers, and columns can be as long as desired. However, the names of SQL functions (as created @@ -334,32 +334,21 @@ faq { faq { What is the maximum size of a VARCHAR in SQLite? } { -

    Remember, SQLite is typeless. A VARCHAR column can hold as much - data as any other column. The total amount of data in a single row - of the database is limited to 1 megabyte. You can increase this limit - to 16 megabytes, if you need to, by adjusting a single #define in the - source tree and recompiling.

    - -

    For maximum speed and space efficiency, you should try to keep the - amount of data in a single row below about 230 bytes.

    +

    SQLite does not enforce datatype constraints. + A VARCHAR column can hold as much data as you care to put it in.

    } faq { Does SQLite support a BLOB type? } { -

    You can declare a table column to be of type "BLOB" but it will still - only store null-terminated strings. This is because the only way to - insert information into an SQLite database is using an INSERT SQL statement, - and you can not include binary data in the middle of the ASCII text string - of an INSERT statement.

    - -

    SQLite is 8-bit clean with regard to the data it stores as long as - the data does not contain any '\000' characters. If you want to store binary - data, consider encoding your data in such a way that it contains no NUL - characters and inserting it that way. You might use URL-style encoding: - encode NUL as "%00" and "%" as "%25". Or, you might consider encoding your - binary data using base-64. There is a source file named - "src/encode.c" in the SQLite distribution that contains +

    SQLite version 3.0 lets you puts BLOB data into any column, even + columns that are declared to hold some other type.

    + +

    SQLite version 2.8 would hold store text data without embedded + '\000' characters. If you need to store BLOB data in SQLite version + 2.8 you'll want to encode that data first. + There is a source file named + "src/encode.c" in the SQLite version 2.8 distribution that contains implementations of functions named "sqlite_encode_binary() and sqlite_decode_binary() that can be used for converting binary data to ASCII and back again, if you like.

    @@ -370,7 +359,7 @@ faq { faq { How do I add or delete columns from an existing table in SQLite. } { -

    SQLite does not support the "ALTER TABLE" SQL command. If you +

    SQLite does yes not support the "ALTER TABLE" SQL command. If you what to change the structure of a table, you have to recreate the table. You can save existing data to a temporary table, drop the old table, create the new table, then copy the data back in from @@ -419,6 +408,20 @@ faq { to any part of the code. You can do anything you want with it.

    } +faq { + How do I use a string literal that contains an embedded single-quote (') + character? +} { +

    The SQL standard specifies that single-quotes in strings are escaped + by putting two single quotes in a row. SQL works like the Pascal programming + language in the regard. SQLite follows this standard. Example: +

    + +
    +    INSERT INTO xyz VALUES('5 O''clock');
    +  
    +} + # End of questions and answers. ############# diff --git a/www/index.tcl b/www/index.tcl index f80518d744..34f79c6b4a 100644 --- a/www/index.tcl +++ b/www/index.tcl @@ -14,17 +14,19 @@ Features include: