]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Syntax documentation updates. (CVS 3294)
authordrh <drh@noemail.net>
Mon, 26 Jun 2006 10:37:11 +0000 (10:37 +0000)
committerdrh <drh@noemail.net>
Mon, 26 Jun 2006 10:37:11 +0000 (10:37 +0000)
FossilOrigin-Name: df601a7b374cb6ec21a2e91abf17af4fed404393

manifest
manifest.uuid
www/lang.tcl

index a5d18b75ed819171c8d01031706d8808c0efca0d..b53f9e7a1c200c2e8dd5e7fef9537a583a4d8070 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C (OS/2)\sArmor\sOS/2\sagainst\saccidental\sdeletion\sof\sfiles,\stoo\s(patch\sby\sDaniel\sKruse,\sverified\sby\sme)\s(CVS\s3293)
-D 2006-06-24T12:39:00
+C Syntax\sdocumentation\supdates.\s(CVS\s3294)
+D 2006-06-26T10:37:12
 F Makefile.in f839b470345d3cb4b0644068474623fe2464b5d3
 F Makefile.linux-gcc 2d8574d1ba75f129aba2019f0b959db380a90935
 F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
@@ -351,7 +351,7 @@ F www/fullscanb.gif f7c94cb227f060511f8909e10f570157263e9a25
 F www/index-ex1-x-b.gif f9b1d85c3fa2435cf38b15970c7e3aa1edae23a3
 F www/index.tcl 38fac8344e6f514725a57cf32946463581459464
 F www/indirect1b1.gif adfca361d2df59e34f9c5cac52a670c2bfc303a1
-F www/lang.tcl 432ee67f7528dd6e6313f149d5df33cad2dfb359
+F www/lang.tcl d5414bd9f63ea3763887893b437d0dce4ad4f403
 F www/lockingv3.tcl f59b19d6c8920a931f096699d6faaf61c05db55f
 F www/mingw.tcl d96b451568c5d28545fefe0c80bee3431c73f69c
 F www/nulls.tcl ec35193f92485b87b90a994a01d0171b58823fcf
@@ -373,7 +373,7 @@ F www/tclsqlite.tcl bb0d1357328a42b1993d78573e587c6dcbc964b9
 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
 F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
 F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513
-P 255aa9121a2ef4fec7fa5523e52969acc96f4b40
-R 2b758788fcbcea37bf1aacb95194485d
-U pweilbacher
-Z dba44f16a572c90023dd1e7bf0447866
+P f357efb373b8631dbe4455530d060020b070bea2
+R 9160521c9071a296cd2536254213d47d
+U drh
+Z 4abb52d1b53299f97247886cbf01198d
index 8438a79a2fd577304b7a871ab6f45bd09db00c77..56cff9e84ab668caefe8f533145acdaed611e355 100644 (file)
@@ -1 +1 @@
-f357efb373b8631dbe4455530d060020b070bea2
\ No newline at end of file
+df601a7b374cb6ec21a2e91abf17af4fed404393
\ No newline at end of file
index fc3811811a26e545ae1d2620812b430ab7bad586..4f5090e1c6f0c0b223153e1bd88bb1ad1f1488cf 100644 (file)
@@ -1,7 +1,7 @@
 #
 # Run this Tcl script to generate the lang-*.html files.
 #
-set rcsid {$Id: lang.tcl,v 1.113 2006/06/17 14:12:48 drh Exp $}
+set rcsid {$Id: lang.tcl,v 1.114 2006/06/26 10:37:12 drh Exp $}
 source common.tcl
 
 if {[llength $argv]>0} {
@@ -49,6 +49,7 @@ proc slink {label} {
 
 foreach {section} [lsort -index 0 -dictionary {
   {{CREATE TABLE} createtable}
+  {{CREATE VIRTUAL TABLE} createvtab}
   {{CREATE INDEX} createindex}
   {VACUUM vacuum}
   {{DROP TABLE} droptable}
@@ -225,7 +226,7 @@ ATTACH [DATABASE] <database-filename> AS <database-name>
 }
 
 puts {
-<p>The ATTACH DATABASE statement adds a preexisting database 
+<p>The ATTACH DATABASE statement adds another database 
 file to the current database connection.  If the filename contains 
 punctuation characters it must be quoted.  The names 'main' and 
 'temp' refer to the main database and the database used for 
@@ -247,9 +248,9 @@ also permissible to attach the same database file multiple times.</p>
 <i>database-name.table-name</i>.  If an attached table doesn't have 
 a duplicate table name in the main database, it doesn't require a 
 database name prefix.  When a database is attached, all of its 
-tables which don't have duplicate names become the 'default' table
+tables which don't have duplicate names become the default table
 of that name.  Any tables of that name attached afterwards require the table 
-prefix. If the 'default' table of a given name is detached, then 
+prefix. If the default table of a given name is detached, then 
 the last table of that name attached becomes the new default.</p>
 
 <p>
@@ -487,7 +488,7 @@ command.</p>
 Section {CREATE TABLE} {createtable}
 
 Syntax {sql-command} {
-CREATE [TEMP | TEMPORARY] TABLE [IF NOT EXISTS] <table-name> (
+CREATE [TEMP | TEMPORARY] TABLE [IF NOT EXISTS] [<database-name> .] <table-name> (
   <column-def> [, <column-def>]*
   [, <constraint>]*
 )
@@ -809,6 +810,40 @@ with the <a href="#dropview">DROP VIEW</a>
 command.</p>
 }
 
+Section {CREATE VIRTUAL TABLE} {createvtab}
+
+Syntax {sql-command} {
+CREATE VIRTUAL TABLE [<database-name> .] <table-name> USING <module-name> [( <arguments> )]
+}
+
+puts {
+<p>A virtual table is an interface to an external storage or computation
+engine that appears to be a table but does not actually store information
+in the database file.</p>
+
+<p>In general, you can do anything with a virtual table that can be done
+with an ordinary table, except that you cannot create triggers on a
+virtual table.  Some virtual table implementations might impose additional
+restrictions.  For example, many virtual tables are read-only.</p>
+
+<p>The &lt;module-name&gt; is the name of an object that implements
+the virtual table.  The &lt;module-name&gt; must be registered with
+the SQLite database connection using
+<a href="capi3ref.html#sqlite3_create_module">sqlite3_create_module</a>
+prior to issuing the CREATE VIRTUAL TABLE statement.
+The module takes zero or more comma-separated arguments.
+The arguments can be just about any text as long as it has balanced
+parentheses.  The argument syntax is sufficiently general that the
+arguments can be made to appear as column definitions in a traditional
+<a href="#createtable">CREATE TABLE</a> statement.  
+SQLite passes the module arguments directly
+to the module without any interpretation.  It is the responsibility
+of the module implementation to parse and interpret its own arguments.</p>
+
+<p>A virtual table is destroyed using the ordinary
+<a href="#droptable">DROP TABLE</a> statement.  There is no
+DROP VIRTUAL TABLE statement.</p>
+}
 
 Section DELETE delete
 
@@ -1196,7 +1231,10 @@ a result immediately based on their inputs.  Aggregate functions
 may only be used in a SELECT statement.  Aggregate functions compute
 their result across all rows of the result set.</p>
 
-<p>The functions shown below are available by default.  Additional
+<a name="corefunctions"></a>
+<b>Core Functions</b>
+
+<p>The core functions shown below are available by default.  Additional
 functions may be written in C and added to the database engine using
 the <a href="capi3ref.html#cfunc">sqlite3_create_function()</a>
 API.</p>
@@ -1372,6 +1410,15 @@ UTF-8 strings.</td>
 </tr>
 </table>
 
+<b>Date And Time Functions</b>
+
+<p>Date and time functions are documented in the 
+<a href="http://www.sqlite.org/cvstrac/wiki?p=DateAndTimeFunctions">
+SQLite Wiki</a>.</p>
+
+<a name="aggregatefunctions"></a>
+<b>Aggregate Functions</b>
+
 <p>
 The aggregate functions shown below are available by default.  Additional
 aggregate functions written in C may be added using the