]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
More documentation updates. (CVS 718)
authordrh <drh@noemail.net>
Thu, 15 Aug 2002 13:45:17 +0000 (13:45 +0000)
committerdrh <drh@noemail.net>
Thu, 15 Aug 2002 13:45:17 +0000 (13:45 +0000)
FossilOrigin-Name: 9c0400aa7a0244605828fa6450ea1cc723240b16

main.mk
manifest
manifest.uuid
www/datatypes.tcl
www/download.tcl
www/index.tcl
www/omitted.tcl
www/quickstart.tcl [new file with mode: 0644]

diff --git a/main.mk b/main.mk
index deaa3d75e418ce9974d11cb3daf13f3c08b67830..f850e10eb4176a32ecd54b1278197d652b08e77a 100644 (file)
--- a/main.mk
+++ b/main.mk
@@ -302,6 +302,9 @@ omitted.html:       $(TOP)/www/omitted.tcl
 datatypes.html:        $(TOP)/www/datatypes.tcl
        tclsh $(TOP)/www/datatypes.tcl >datatypes.html
 
+quickstart.html:       $(TOP)/www/quickstart.tcl
+       tclsh $(TOP)/www/quickstart.tcl >quickstart.html
+
 
 # Files to be published on the website.
 #
@@ -324,7 +327,8 @@ DOC = \
   formatchng.html \
   conflict.html \
   omitted.html \
-  datatypes.html
+  datatypes.html \
+  quickstart.html
 
 doc:   $(DOC)
        mkdir -p doc
index f4c80bfb4e35a15bbd7c6967e857abd39a0fbfa5..347f26381b13a0a4f3a8d1ae30b637af139414d8 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Additional\stest\scases\sand\sdocumentation\supdates.\s(CVS\s717)
-D 2002-08-15T11:48:13
+C More\sdocumentation\supdates.\s(CVS\s718)
+D 2002-08-15T13:45:17
 F Makefile.in 6291a33b87d2a395aafd7646ee1ed562c6f2c28c
 F Makefile.linux-gcc b86a99c493a5bfb402d1d9178dcdc4bd4b32f906
 F README f1de682fbbd94899d50aca13d387d1b3fd3be2dd
@@ -14,7 +14,7 @@ F doc/report1.txt a031aaf37b185e4fa540223cb516d3bccec7eeac
 F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895
 F libtool c56e618713c9510a103bda6b95f3ea3900dcacd6
 F ltmain.sh e9ed72eb1d690f447c13945eaf69e28af531eda1
-F main.mk 6f0f1cfd611e5ead3e7487b0e8b60ccb17d9fc0b
+F main.mk 8a44951de2a6791646fe65a11d47f43223d23e86
 F publish.sh a7a8d23e6525bd25d4f5ba9b0fc6edc107d94050
 F spec.template 238f7db425a78dc1bb7682e56e3834c7270a3f5e
 F sqlite.1 83f4a9d37bdf2b7ef079a82d54eaf2e3509ee6ea
@@ -131,21 +131,22 @@ F www/c_interface.tcl 70548ff5f73c6adcdb7aeced929ebb30a99f5807
 F www/changes.tcl df6f06b1aa97ef285c744bf19ec3efddf707b05f
 F www/conflict.tcl 81dd21f9a679e60aae049e9dd8ab53d59570cda2
 F www/crosscompile.tcl 3622ebbe518927a3854a12de51344673eb2dd060
-F www/datatypes.tcl a555ff9f5121aab9d7cffcec4c1d8c86ad79c4ee
-F www/download.tcl 29aa6679ca29621d10613f60ebbbda18f4b91c49
+F www/datatypes.tcl d528c3e29e1b289f27b44c164feace2541e4f261
+F www/download.tcl 0932d7f4f0e8b2adbbd22fac73132f86e43ab4a9
 F www/dynload.tcl 02eb8273aa78cfa9070dd4501dca937fb22b466c
 F www/faq.tcl 9262ad6f7f25ab253a9771ab1fbd48a1a14f2957
 F www/formatchng.tcl b4449e065d2da38b6563bdf12cf46cfe1d4d765e
-F www/index.tcl 9af69527a26895ec56ad920d4c51541c3e5643a6
+F www/index.tcl 43dc2ae4b6d39d9923ab49adbdf25e6f729acb9d
 F www/lang.tcl a2785964e80627381e953849e227a3ff2a38cb09
 F www/mingw.tcl f1c7c0a7f53387dd9bb4f8c7e8571b7561510ebc
-F www/omitted.tcl 7a6d6598e6a6a09bf54a02e0aff0f29e407d9f11
+F www/omitted.tcl aa5145a79f5a8919ac41885c30007da9face1d48
 F www/opcode.tcl 33c5f2061a05c5d227c72b84c080b3bf74c74f8b
+F www/quickstart.tcl 247f2ba9009f8114036080e758e7d9d3b884dd32
 F www/speed.tcl 7fc83f1b018e1ecc451838449542c3079ed12425
 F www/sqlite.tcl ae3dcfb077e53833b59d4fcc94d8a12c50a44098
 F www/tclsqlite.tcl 1db15abeb446aad0caf0b95b8b9579720e4ea331
 F www/vdbe.tcl 2013852c27a02a091d39a766bc87cff329f21218
-P 66a0f6a8e25e3eeed78eba4b63b097f921c79d99
-R cf9944ebe55162967e3e3ce76c6f7260
+P 048b16c111693727482642e2a19a74a91458fc80
+R 6efb031218c7f978d135ae50d0d8e6c1
 U drh
-Z 8cc0e2bc226abcbf418a7651cce9d7b1
+Z 1e0a5248b18dfae467225acd1f95aa8e
index d58a3b8ec2d2c924d591836901e3cfd5baae71e0..a814331ecb2a29d860e0454b5c9ea81d419a5c5b 100644 (file)
@@ -1 +1 @@
-048b16c111693727482642e2a19a74a91458fc80
\ No newline at end of file
+9c0400aa7a0244605828fa6450ea1cc723240b16
\ No newline at end of file
index b3db49c3eddd996c6747c8ab3b98f28fe1546ca0..4c136fe5626103bd903913e185dd450cce6e2966 100644 (file)
@@ -1,7 +1,7 @@
 #
 # Run this script to generated a datatypes.html output file
 #
-set rcsid {$Id: datatypes.tcl,v 1.3 2002/08/15 11:48:14 drh Exp $}
+set rcsid {$Id: datatypes.tcl,v 1.4 2002/08/15 13:45:17 drh Exp $}
 
 puts {<html>
 <head>
@@ -70,7 +70,7 @@ CREATE TABLE ex2(
   i TIMESTAMP,
   j NUMERIC(10,5)
   k VARYING CHARACTER (24),
-  l NATIVE VARYING CHAR(16)
+  l NATIONAL VARYING CHARACTER(16)
 );
 </pre></blockquote>
 
index 7af98536e73bd777e90bc7c4ca18ce4ea950b6fa..bdf5674a0e17aa79e4834f0bbf802034b65cf9a2 100644 (file)
@@ -1,35 +1,35 @@
 #
 # Run this TCL script to generate HTML for the download.html file.
 #
-set rcsid {$Id: download.tcl,v 1.5 2002/03/30 14:15:52 drh Exp $}
+set rcsid {$Id: download.tcl,v 1.6 2002/08/15 13:45:17 drh Exp $}
 
 puts {<html>
 <head><title>SQLite Download Page</title></head>
 <body bgcolor=white>
-<h1 align=center>SQLite Download Page</h1>}
-#<p align=center>}
-#puts "This page was last modified on [lrange $rcsid 3 4] UTC<br>"
-#set vers [lindex $argv 0]
-#puts "The latest SQLite version is <b>$vers</b>"
-#puts " created on [exec cat last_change] UTC"
-#puts {</p>}
+<h1 align=center>SQLite Download Page</h1>
+<table width="100%" cellpadding="5">
+}
 
-puts {<h2>Precompiled Binaries For Linux</h2>}
 
 proc Product {file desc} {
   if {![file exists $file]} return
   set size [file size $file]
   puts [subst {
-<table cellpadding="15">
 <tr>
-<td width="200" align="right" valign="top">
-<a href="$file">$file</a><br>($size bytes)
-</td>
+<td width="10"></td>
+<td align="right" valign="top">
+<a href="$file">$file</a><br>($size bytes)</td>
+<td width="5"></td>
 <td valign="top">[string trim $desc]</td>
-</tr>
-</table>}]
+</tr>}]
+}
+
+proc Heading {title} {
+  puts "<tr><td colspan=4><big><b>$title</b></big></td></tr>"
 }
 
+Heading {Precompiled Binaries for Linux}
+
 Product sqlite.bin.gz {
   A command-line program for accessing and modifing SQLite databases.
   See <a href="sqlite.html">the documentation</a> for additional information.
@@ -59,7 +59,7 @@ foreach name [lsort -dict [glob -nocomplain sqlite-*.i386.rpm]] {
   }
 }
 
-puts {<h2>Precompiled Binaries For Windows</h2>}
+Heading {Precompiled Binaries For Windows}
 
 Product sqlite.zip {
   A command-line program for accessing and modifing SQLite databases.
@@ -75,7 +75,7 @@ Product sqlitedll.zip {
   The only external dependency is MSVCRT.DLL.
 }
 
-puts {<h2>Source Code</h2>}
+Heading {Source Code}
 
 Product {sqlite_source.zip} {
   This ZIP archive contains pure C source code for the SQLite library.
@@ -97,6 +97,7 @@ foreach name [lsort -dict -decreasing [glob -nocomplain sqlite-*.tar.gz]] {
 }
 
 puts {
+</table>
 <p><hr /></p>
 <p>
 <a href="index.html"><img src="/goback.jpg" border=0 />
index 8fbacd6509c5e8d1d082ea6d4a748a161a7b7841..ff5a60176dd0485c8a7dbd8aac3198076888d8c6 100644 (file)
@@ -1,7 +1,7 @@
 #
 # Run this TCL script to generate HTML for the index.html file.
 #
-set rcsid {$Id: index.tcl,v 1.65 2002/08/14 00:08:13 drh Exp $}
+set rcsid {$Id: index.tcl,v 1.66 2002/08/15 13:45:17 drh Exp $}
 
 puts {<html>
 <head><title>SQLite: An SQL Database Engine In A C Library</title></head>
@@ -38,6 +38,7 @@ Quick Links:
 <li><a href="download.html">Download</a></li>
 <li><a href="http://cvs.hwaci.com:2080/sqlite/timeline">Change Log</a></li>
 <li><a href="http://cvs.hwaci.com:2080/sqlite/tktnew">Report a bug</a></li>
+<li><a href="quickstart.html">Quick start</a></li>
 </ul>
 </td></tr></table>
 </td></tr>
@@ -129,6 +130,8 @@ puts {<h2>Documentation</h2>
 <p>The following documentation is currently available:</p>
 
 <p><ul>
+<li>A <a href="quickstart.html">Quick Start</a> guide to using SQLite in
+    5 minutes or less.</li>
 <li><a href="faq.html">Frequently Asked Questions</a> are available online.</li>
 <li>Information on the <a href="sqlite.html">sqlite</a>
     command-line utility.</li>
index e14b94bcf6c6f274440d5e8e1e9d17be212fa3b6..329b6d3b364534d776f4c815e518b4d2726cd1b2 100644 (file)
@@ -1,7 +1,7 @@
 #
 # Run this script to generated a omitted.html output file
 #
-set rcsid {$Id: omitted.tcl,v 1.1 2002/08/14 00:08:14 drh Exp $}
+set rcsid {$Id: omitted.tcl,v 1.2 2002/08/15 13:45:17 drh Exp $}
 
 puts {<html>
 <head>
@@ -20,7 +20,13 @@ puts {
 <p>
 Rather than try to list all the features of SQL92 that SQLite does
 support, it is much easier to list those that it does not.
-The following are features of of SQL92 that SQLite does not implement.
+Unsupported features of SQL92 are shown below.</p>
+
+<p>
+The order of this list gives some hint as to when a feature might
+be added to SQLite.  Those features near the top of the list are
+likely to be added in the near future.  There are no immediate
+plans to add features near the bottom of the list.
 </p>
 
 <table cellpadding="10">
@@ -28,36 +34,22 @@ The following are features of of SQL92 that SQLite does not implement.
 
 proc feature {name desc} {
   puts "<tr><td valign=\"top\"><b><nobr>$name</nobr></b></td>"
+  puts "<td width=\"10\">&nbsp;</th>"
   puts "<td valign=\"top\">$desc</td></tr>"
 }
 
-feature {RIGHT and FULL OUTER JOIN} {
-  LEFT OUTER JOIN is implemented, but not RIGHT OUTER JOIN or
-  FULL OUTER JOIN.
-}
-
 feature {CHECK constraints} {
   CHECK constraints are parsed but they are not enforced.
   NOT NULL and UNIQUE constraints are enforced, however.
 }
 
-feature {FOREIGN KEY constraints} {
-  FOREIGN KEY constraints are parsed but are ignored.
-}
-
-feature {GRANT and REVOKE} {
-  Since SQLite reads and writes an ordinary disk file, the
-  only access permissions that can be applied are the normal
-  file access permissions of the underlying operating system.
-  The GRANT and REVOKE commands commonly found on client/server
-  RDBMSes are not implemented because they would be meaningless
-  for an embedded database engine.
+feature {Variable subqueries} {
+  Subqueries must be static.  They are evaluated only once.  They may not,
+  therefore, refer to variables in the containing query.
 }
 
-feature {DELETE, INSERT, and UPDATE on VIEWs} {
-  VIEWs in SQLite are read-only.  But you can create a trigger
-  that fires on an attempt to DELETE, INSERT, or UPDATE a view and do
-  what you need in the body of the trigger.
+feature {FOREIGN KEY constraints} {
+  FOREIGN KEY constraints are parsed but are not enforced.
 }
 
 feature {ALTER TABLE} {
@@ -70,9 +62,25 @@ feature {The COUNT(DISTINCT X) function} {
   &nbsp;&nbsp;SELECT count(x) FROM (SELECT DISTINCT x FROM tbl);
 }
 
-feature {Variable subqueries} {
-  Subqueries must be static.  They are evaluated only once.  They must not,
-  therefore, refer to variables in the containing query.
+feature {RIGHT and FULL OUTER JOIN} {
+  LEFT OUTER JOIN is implemented, but not RIGHT OUTER JOIN or
+  FULL OUTER JOIN.
+}
+
+feature {Writing to VIEWs} {
+  VIEWs in SQLite are read-only.  You may not execute a DELETE, INSERT, or
+  UPDATE statement on a view. But you can create a trigger
+  that fires on an attempt to DELETE, INSERT, or UPDATE a view and do
+  what you need in the body of the trigger.
+}
+
+feature {GRANT and REVOKE} {
+  Since SQLite reads and writes an ordinary disk file, the
+  only access permissions that can be applied are the normal
+  file access permissions of the underlying operating system.
+  The GRANT and REVOKE commands commonly found on client/server
+  RDBMSes are not implemented because they would be meaningless
+  for an embedded database engine.
 }
 
 puts {
diff --git a/www/quickstart.tcl b/www/quickstart.tcl
new file mode 100644 (file)
index 0000000..99a956a
--- /dev/null
@@ -0,0 +1,110 @@
+#
+# Run this TCL script to generate HTML for the quickstart.html file.
+#
+set rcsid {$Id: quickstart.tcl,v 1.1 2002/08/15 13:45:17 drh Exp $}
+
+puts {<html>
+<head><title>SQLite In 5 Minutes Or Less</title></head>
+<body bgcolor=white>
+<h1 align=center>SQLite In 5 Minutes Or Less</h1>}
+
+puts {
+<p>Here is what you do to start experimenting with SQLite without having
+to do a lot of tedious reading and configuration:</p>
+
+<h2>Download The Code</h2>
+
+<ul>
+<li><p>Get a copy of the prebuild binaries for your machine, or get a copy
+of the sources and compile them yourself.  Visit
+the <a href="download.html">download</a> page for more information.</p></li>
+</ul>
+
+<h2>Create A New Database</h2>
+
+<ul>
+<li><p>At a shell or DOS prompt, enter: "<b>sqlite test.db</b>".  This will
+create a new database named "test.db".  (You can use a different name if
+you like.)</p></li>
+<li><p>Enter SQL commands at the prompt to create and populate the
+new database.</p></li>
+</ul>
+
+<h2>Write Programs That Use SQLite</h2>
+
+<ul>
+<li><p>Below is a simple TCL program that demonstrates how to use
+the TCL interface to SQLite.  The program executes the SQL statements
+given as the second argument on the database defined by the first
+argument.</p>
+
+<blockquote><pre>
+#!/usr/bin/tclsh
+if {$argc!=2} {
+  puts stderr "Usage: %s DATABASE SQL-STATEMENT"
+  exit 1
+}
+load /usr/lib/tclsqlite.so Sqlite
+sqlite db [lindex $argv 0]
+db eval [lindex $argv 1] x {
+  foreach v $x(*) {
+    puts "$v = $x($v)"
+  }
+  puts ""
+}
+db close
+</pre></blockquote>
+</li>
+
+<li><p>Below is a simple C program that demonstrates how to use
+the C/C++ interface to SQLite.  The name of a database is given by
+the first argument and the second argument is one or more SQL statements
+to execute against the database.</p>
+
+<blockquote><pre>
+#include &lt;stdio.h&gt;
+#include &lt;sqlite.h&gt;
+
+static int callback(void *NotUsed, int argc, char **argv, char **azColName){
+  int i;
+  for(i=0; i&lt;argc; i++){
+    printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL");
+  }
+  printf("\n");
+  return 0;
+}
+
+int main(int argc, char **argv){
+  sqlite *db;
+  char *zErrMsg = 0;
+  int rc;
+
+  if( argc!=3 ){
+    fprintf(stderr, "Usage: %s DATABASE SQL-STATEMENT\n", argv[0]);
+    exit(1);
+  }
+  db = sqlite_open(argv[1], 0, &zErrMsg);
+  if( db==0 ){
+    fprintf(stderr, "Can't open database: %s\n", &zErrMsg);
+    exit(1);
+  }
+  rc = sqlite_exec(db, argv[2], callback, 0, &zErrMsg);
+  if( rc!=SQLITE_OK ){
+    fprintf(stderr, "SQL error: %s\n", zErrMsg);
+  }
+  sqlite_close(db);
+  return 0;
+}
+</pre></blockquote>
+</li>
+</ul>
+}
+
+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>}