Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | More documentation updates. (CVS 951) |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
24b9b569240d2108b17420d85cafdc71 |
User & Date: | drh 2003-05-03 19:04:04.000 |
Context
2003-05-04
| ||
07:02 | new section for keywords, more docs for attached databases , links, cleanup (CVS 952) (check-in: 87e1b6a936 user: jplyon tags: trunk) | |
2003-05-03
| ||
19:04 | More documentation updates. (CVS 951) (check-in: 24b9b56924 user: drh tags: trunk) | |
04:55 | - added entry for ATTACH DATABASE. - added entry for DETACH DATABASE. - added soundex() function. - added some new TEMP modifiers. - added new VACUUM behavior. - added the Oracle8 outer join "(+)" syntax. - documented the modulus/remainder operator %. - added ALL as alternative to DISTINCT in SELECT. - fixed assignment list in UPDATE to use * metacharacter. - fixed value in PRAGMA to be optional. - added link from INSERT topic to REPLACE. - added optional CONSTRAINT <name> before column constraints. - skip 2 lines before each Section in the TCL source. (CVS 950) (check-in: fd28c5229e user: jplyon tags: trunk) | |
Changes
Changes to www/faq.tcl.
1 2 3 | # # Run this script to generated a faq.html output file # | | | 1 2 3 4 5 6 7 8 9 10 11 | # # Run this script to generated a faq.html output file # set rcsid {$Id: faq.tcl,v 1.22 2003/05/03 19:04:04 drh Exp $} puts {<html> <head> <title>SQLite Frequently Asked Questions</title> </head> <body bgcolor="white"> <h1 align="center">Frequently Asked Questions</h1> |
︙ | ︙ | |||
393 394 395 396 397 398 399 400 401 402 403 404 405 406 | DROP TABLE t1; CREATE TABLE t1(a,b); INSERT INTO t1 SELECT a,b FROM t1_backup; DROP TABLE t1_backup; COMMIT; </pre></blockquote> } # End of questions and answers. ############# puts {<DL COMPACT>} for {set i 1} {$i<$cnt} {incr i} { puts " <DT><A HREF=\"#q$i\">($i)</A></DT>" | > > > > > > > > > > > > > > > > > > > > > > > > > > | 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 | DROP TABLE t1; CREATE TABLE t1(a,b); INSERT INTO t1 SELECT a,b FROM t1_backup; DROP TABLE t1_backup; COMMIT; </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. ############# puts {<DL COMPACT>} for {set i 1} {$i<$cnt} {incr i} { puts " <DT><A HREF=\"#q$i\">($i)</A></DT>" |
︙ | ︙ |
Changes to www/lang.tcl.
1 2 3 | # # Run this Tcl script to generate the sqlite.html file. # | | | 1 2 3 4 5 6 7 8 9 10 11 | # # Run this Tcl script to generate the sqlite.html file. # set rcsid {$Id: lang.tcl,v 1.52 2003/05/03 19:04:04 drh Exp $} puts {<html> <head> <title>Query Language Understood By SQLite</title> </head> <body bgcolor=white> <h1 align=center> |
︙ | ︙ | |||
909 910 911 912 913 914 915 | right of the decimal point. If the <i>Y</i> argument is omitted, 0 is assumed.</td> </tr> <tr> <td valign="top" align="right">soundex(<i>X</i>)</td> <td valign="top">Compute the soundex encoding of the string <i>X</i>. | > > > > > | > > > > | 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 | right of the decimal point. If the <i>Y</i> argument is omitted, 0 is assumed.</td> </tr> <tr> <td valign="top" align="right">soundex(<i>X</i>)</td> <td valign="top">Compute the soundex encoding of the string <i>X</i>. 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> <td valign="top" align="right">substr(<i>X</i>,<i>Y</i>,<i>Z</i>)</td> <td valign="top">Return a substring of input string <i>X</i> that begins with the <i>Y</i>-th character and which is <i>Z</i> characters long. The left-most character of <i>X</i> is number 1. If <i>Y</i> is negative |
︙ | ︙ | |||
1063 1064 1065 1066 1067 1068 1069 | <dd><p>When a constraint violation occurs, the one row that contains the constraint violation is not inserted or changed. But the command continues executing normally. Other rows before and after the row that contained the constraint violation continue to be inserted or updated normally. No error is returned.</p></dd> <dt><b>REPLACE</b></dt> | | | | | > > > > > | 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 | <dd><p>When a constraint violation occurs, the one row that contains the constraint violation is not inserted or changed. But the command continues executing normally. Other rows before and after the row that contained the constraint violation continue to be inserted or updated normally. No error is returned.</p></dd> <dt><b>REPLACE</b></dt> <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. 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> <p> The conflict resolution algorithm can be specified in three places, in order from lowest to highest precedence: </p> |
︙ | ︙ | |||
1431 1432 1433 1434 1435 1436 1437 | <p>The VACUUM command is an SQLite extension modelled after a similar command found in PostgreSQL. If VACUUM is invoked with the name of a table or index then it is suppose to clean up the named table or index. In version 1.0 of SQLite, the VACUUM command would invoke <b>gdbm_reorganize()</b> to clean up the backend database file.</p> <p> | > | | < < < < < < | 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 | <p>The VACUUM command is an SQLite extension modelled after a similar command found in PostgreSQL. If VACUUM is invoked with the name of a table or index then it is suppose to clean up the named table or index. In version 1.0 of SQLite, the VACUUM command would invoke <b>gdbm_reorganize()</b> to clean up the backend database file.</p> <p> 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. 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> } puts { <p><hr /></p> <p><a href="index.html"><img src="/goback.jpg" border=0 /> Back to the SQLite Home Page</a> </p> </body></html>} |