-C -\sadded\sentry\sfor\sATTACH\sDATABASE.\n-\sadded\sentry\sfor\sDETACH\sDATABASE.\n-\sadded\ssoundex()\sfunction.\n-\sadded\ssome\snew\sTEMP\smodifiers.\n-\sadded\snew\sVACUUM\sbehavior.\n-\sadded\sthe\sOracle8\souter\sjoin\s"(+)"\ssyntax.\n-\sdocumented\sthe\smodulus/remainder\soperator\s%.\n-\sadded\sALL\sas\salternative\sto\sDISTINCT\sin\sSELECT.\n-\sfixed\sassignment\slist\sin\sUPDATE\sto\suse\s*\smetacharacter.\n-\sfixed\svalue\sin\sPRAGMA\sto\sbe\soptional.\n-\sadded\slink\sfrom\sINSERT\stopic\sto\sREPLACE.\n-\sadded\soptional\sCONSTRAINT\s<name>\sbefore\scolumn\sconstraints.\n-\sskip\s2\slines\sbefore\seach\sSection\sin\sthe\sTCL\ssource.\s(CVS\s950)
-D 2003-05-03T04:55:19
+C More\sdocumentation\supdates.\s(CVS\s951)
+D 2003-05-03T19:04:04
F Makefile.in 004acec253ecdde985c8ecd5b7c9accdb210378f
F Makefile.linux-gcc b86a99c493a5bfb402d1d9178dcdc4bd4b32f906
F README f1de682fbbd94899d50aca13d387d1b3fd3be2dd
F www/datatypes.tcl 0cb28565580554fa7e03e8fcb303e87ce57757ae
F www/download.tcl 0932d7f4f0e8b2adbbd22fac73132f86e43ab4a9
F www/dynload.tcl 02eb8273aa78cfa9070dd4501dca937fb22b466c
-F www/faq.tcl 06276ff6c3e369374bb83034cc9d4a7d3a2a34a1
+F www/faq.tcl 12d1788d4abcfe1ff3054e17605df2418883bf6f
F www/fileformat.tcl d9b586416c0d099b82e02e469d532c9372f98f3f
F www/formatchng.tcl cbaf0f410096c71f86a7537cf9249fa04b9a659c
F www/index.tcl b155eba45136d19e7aa6ba979d4093180c335cf7
-F www/lang.tcl 1852abb0efcff02cc15a0d7f4c3a2a1b9c06c256
+F www/lang.tcl 46fb1a380021aa1e7a51104b53b4066e54ba9b64
F www/mingw.tcl d96b451568c5d28545fefe0c80bee3431c73f69c
F www/nulls.tcl 29497dac2bc5b437aa7e2e94577dad4d8933ed26
F www/omitted.tcl 118062f40a203fcb88b8d68ef1d7c0073ac191ec
F www/sqlite.tcl ae3dcfb077e53833b59d4fcc94d8a12c50a44098
F www/tclsqlite.tcl 1db15abeb446aad0caf0b95b8b9579720e4ea331
F www/vdbe.tcl 2013852c27a02a091d39a766bc87cff329f21218
-P 8d9ee45ab487614191e8d6aef845141fdddf832a
-R 385cd6fe68bb70c11d767d812d8a42a0
-U jplyon
-Z 4e270e80f98870cfebfe7350053c13b7
+P fd28c5229ece1d90e24d0ecaa518d8df5a4f55f0
+R 0f44dbdd9ad557cbceb63cfdf312e27b
+U drh
+Z 7676704ebf2d2713ee0ac3dc2cc0e3d3
-fd28c5229ece1d90e24d0ecaa518d8df5a4f55f0
\ No newline at end of file
+24b9b569240d2108b17420d85cafdc718c67269f
\ No newline at end of file
#
# Run this script to generated a faq.html output file
#
-set rcsid {$Id: faq.tcl,v 1.21 2002/11/06 14:08:12 drh Exp $}
+set rcsid {$Id: faq.tcl,v 1.22 2003/05/03 19:04:04 drh Exp $}
puts {<html>
<head>
</pre></blockquote>
}
+faq {
+ I deleted a lot of data but the database file did not get any
+ smaller. Is this a bug?
+} {
+ <p>No. When you delete information from an SQLite database, the
+ unused disk space is added to an internal "free-list" and is reused
+ the next time you insert data. The disk space is not lost. But
+ neither is it returned to the operating system.</p>
+
+ <p>If you delete a lot of data and want to shrink the database file,
+ run the VACUUM command (version 2.8.1 and later). VACUUM will reconstruct
+ the database from scratch. This will leave the database with an empty
+ free-list and a file that is minimal in size. Note, however, that the
+ VACUUM can take some time to run (around a half second per megabyte
+ on the Linux box where SQLite is developed) and it can use up to twice
+ as much temporary disk space as the original file while it is running.
+ </p>
+}
+
+faq {
+ Can I use SQLite in my commerical product without paying royalties?
+} {
+ <p>Yes. SQLite is in the public domain. No claim of ownership is made
+ to any part of the code. You can do anything you want with it.</p>
+}
+
# End of questions and answers.
#############
#
# Run this Tcl script to generate the sqlite.html file.
#
-set rcsid {$Id: lang.tcl,v 1.51 2003/05/03 04:55:19 jplyon Exp $}
+set rcsid {$Id: lang.tcl,v 1.52 2003/05/03 19:04:04 drh Exp $}
puts {<html>
<head>
<tr>
<td valign="top" align="right">soundex(<i>X</i>)</td>
<td valign="top">Compute the soundex encoding of the string <i>X</i>.
-This returns "?000" for a NULL argument.
+The string "?000" is returned if the argument is NULL.
+This function is omitted from SQLite by default.
+It is only available the -DSQLITE_SOUNDEX=1 compiler option
+is used when SQLite is built.</td>
+</tr>
+
+<tr>
+<td valign="top" align="right">sqlite_version(*)</td>
+<td valign="top">Return the version string for the SQLite library
+that is running. Example: "2.8.0"</td>
</tr>
<tr>
normally. No error is returned.</p></dd>
<dt><b>REPLACE</b></dt>
-<dd><p>When a UNIQUE constraint violation occurs, the pre-existing row
-that is causing the constraint violation is removed prior to inserting
+<dd><p>When a UNIQUE constraint violation occurs, the pre-existing rows
+that are causing the constraint violation are removed prior to inserting
or updating the current row. Thus the insert or update always occurs.
-The command continues executing normally. No error is returned.</p>
-<p>If a NOT NULL constraint violation occurs, the NULL value is replaced
+The command continues executing normally. No error is returned.
+If a NOT NULL constraint violation occurs, the NULL value is replaced
by the default value for that column. If the column has no default
value, then the ABORT algorithm is used.</p>
+
+<p>When this conflict resolution strategy delete rows in order to
+statisfy a constraint, it does not invoke delete triggers on those
+rows. But that may change in a future release.</p>
+
</dd>
</dl>
<b>gdbm_reorganize()</b> to clean up the backend database file.</p>
<p>
-This command was readded after version 2.8.0. of SQLite. It now cleans
+VACUUM became a no-op for version 2.0.0 of SQLite.
+The command was reactivated with version 2.8.1. It now cleans
the database by copying its contents to a temporary database file, and
reloading the database file from it. This will eliminate free pages,
align table data to be contiguous, and otherwise clean up the database
-file structure.</p>
+file structure. The index or table name argument is now ignored.</p>
<p>This command will fail if there is an active transaction. This
command has no effect on an in-memory database.</p>
</p>
</body></html>}
-
-
-
-
-
-