Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Update the FAQ. Change the GMT timezone label to UTC on all files. (CVS 318) |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
f1a5808288e4204aee03531de0b9e664 |
User & Date: | drh 2001-11-24 13:23:05.000 |
Context
2001-11-24
| ||
13:36 | Typos fixed. (CVS 319) (check-in: e86a68c5ac user: drh tags: trunk) | |
13:23 | Update the FAQ. Change the GMT timezone label to UTC on all files. (CVS 318) (check-in: f1a5808288 user: drh tags: trunk) | |
00:45 | Version 2.1.3 (CVS 458) (check-in: 974d42839b user: drh tags: trunk) | |
Changes
Changes to www/arch.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 12 13 14 15 16 17 18 19 20 21 22 | # # Run this Tcl script to generate the sqlite.html file. # set rcsid {$Id: arch.tcl,v 1.7 2001/11/24 13:23:05 drh Exp $} puts {<html> <head> <title>Architecture of SQLite</title> </head> <body bgcolor=white> <h1 align=center> The Architecture Of SQLite </h1>} puts "<p align=center> (This page was last modified on [lrange $rcsid 3 4] UTC) </p>" puts { <h2>Introduction</h2> <table align="right" border="1" cellpadding="15" cellspacing="1"> <tr><th>Block Diagram Of SQLite</th></tr> |
︙ | ︙ |
Changes to www/c_interface.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 12 13 14 15 16 17 18 19 20 21 22 | # # Run this Tcl script to generate the sqlite.html file. # set rcsid {$Id: c_interface.tcl,v 1.20 2001/11/24 13:23:05 drh Exp $} puts {<html> <head> <title>The C language interface to the SQLite library</title> </head> <body bgcolor=white> <h1 align=center> The C language interface to the SQLite library </h1>} puts "<p align=center> (This page was last modified on [lrange $rcsid 3 4] UTC) </p>" puts { <p>The SQLite library is designed to be very easy to use from a C or C++ program. This document gives an overview of the C/C++ programming interface.</p> |
︙ | ︙ |
Changes to www/crosscompile.tcl.
1 2 3 | # # Run this Tcl script to generate the crosscompile.html file. # | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | # # Run this Tcl script to generate the crosscompile.html file. # set rcsid {$Id: crosscompile.tcl,v 1.5 2001/11/24 13:23:05 drh Exp $} puts {<html> <head> <title>Notes On How To Compile SQLite Using The MinGW Cross-Compiler</title> </head> <body bgcolor=white> <h1 align=center> Notes On How To Compile SQLite Using The MinGW Cross-Compiler </h1>} puts "<p align=center> (This page was last modified on [lrange $rcsid 3 4] UTC) </p>" puts { <p><a href="http://www.mingw.org/">MinGW</a> or <a href="http://www.mingw.org/">Minimalist GNU For Windows</a> is a version of the popular GCC compiler that builds Win95/Win98/WinNT binaries. See the website for details.</p> |
︙ | ︙ |
Changes to www/download.tcl.
1 2 3 | # # Run this TCL script to generate HTML for the download.html file. # | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | # # Run this TCL script to generate HTML for the download.html file. # set rcsid {$Id: download.tcl,v 1.2 2001/11/24 13:23:05 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>} puts {<h2>Precompiled Binaries For Linux</h2>} proc Product {file desc} { if {![file exists $file]} return set size [file size $file] |
︙ | ︙ |
Changes to www/faq.tcl.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | # # Run this script to generated a faq.html output file # puts {<html> <head> <title>SQLite Frequently Asked Questions</title> </head> <body bgcolor="white"> <h1 align="center">Frequently Asked Questions</h1> } set cnt 1 proc faq {question answer} { set ::faq($::cnt) [list [string trim $question] [string trim $answer]] incr ::cnt } | > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | # # Run this script to generated a faq.html output file # set rcsid {$Id: faq.tcl,v 1.2 2001/11/24 13:23:05 drh Exp $} puts {<html> <head> <title>SQLite Frequently Asked Questions</title> </head> <body bgcolor="white"> <h1 align="center">Frequently Asked Questions</h1> } puts "<p align=center> (This page was last modified on [lrange $rcsid 3 4] UTC) </p>" set cnt 1 proc faq {question answer} { set ::faq($::cnt) [list [string trim $question] [string trim $answer]] incr ::cnt } |
︙ | ︙ | |||
126 127 128 129 130 131 132 | <p>If you need to move the database from one machine to another, you'll have to do an ASCII dump of the database on the source machine and then reconstruct the database at the destination machine. The following is a typical command for transferring an SQLite databases between two machines: <blockquote><pre> | | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 | <p>If you need to move the database from one machine to another, you'll have to do an ASCII dump of the database on the source machine and then reconstruct the database at the destination machine. The following is a typical command for transferring an SQLite databases between two machines: <blockquote><pre> echo .dump | sqlite from.db | ssh sparc sqlite to.db </pre></blockquote> The command above assumes the name of the destination machine is <b>sparc</b> and that you have SSH running on both the source and destination. An alternative approach is to save the output of the first <b>sqlite</b> command in a temporary file, move the temporary file to the destination machine, then run the second <b>sqlite</b> command while redirecting input from the temporary file.</p> } faq { Can multiple applications or multiple instances of the same application access a single database file at the same time? } { <p>Multiple processes can have the same database open at the same time. On unix systems, multiple processes can be doing a SELECT at the same time. But only one process can be making changes to the database at once. On windows, only a single process can be reading from the database at one time since Win95/98/ME does not support reader/writer locks.</p> <p>The locking mechanism used to control simultaneous access might not work correctly if the database file is kept on an NFS filesystem. You should avoid putting SQLite database files on NFS if multiple processes might try to access the file at the same time.</p> <p>Locking in SQLite is very course-grained. SQLite locks the entire database. Big database servers (PostgreSQL, MySQL, Oracle, etc.) generally have finer grained locking, such as locking on a single table or a single row within a table. If you have a massively parallel database application, you should consider using a big database server instead of SQLite.</p> <p>When SQLite tries to access a file that is locked by another process, the default behavior is to return SQLITE_BUSY. You can adjust this behavior from C code using the <b>sqlite_busy_handler()</b> or <b>sqlite_busy_timeout()</b> API functions. See the API documentation for details.</p> } faq { Is SQLite threadsafe? } { <p>Almost. In the source file named "<b>os.c</b>" there are two functions named <b>sqliteOsEnterMutex()</b> and <b>sqliteOsLeaveMutex()</b>. In the default distribution these functions are stubs. They do not do anything. If you change them so that they actually implement a mutex, then SQLite will be threadsafe. But because these routines are stubs, the default SQLite distribution is not threadsafe.</p> } faq { How do I list all tables/indices contained in an SQLite database } { <p>If you are running the <b>sqlite</b> command-line access program you can type "<b>.tables</b>" to get a list of all tables. Or you can type "<b>.schema</b>" to see the complete database schema including all tables and indices. Either of these commands can be followed by a LIKE pattern that will restrict the tables that are displayed.</p> <p>From within a C/C++ program (or a script using Tcl/Ruby/Perl/Python bindings) you can get access to table and index names by doing a SELECT on a special table named "<b>SQLITE_MASTER</b>". Every SQLite database has an SQLITE_MASTER table that defines the schema for the database. The SQLITE_MASTER table looks like this:</p> <blockquote><pre> CREATE TABLE sqlite_master ( type TEXT, name TEXT, tbl_name TEXT, rootpage INTEGER, sql TEXT ); </pre></blockquote> <p>For tables, the <b>type</b> field will always be <b>'table'</b> and the <b>name</b> field will be the name of the table. So to get a list of all tables in the database, use the following SELECT command:</p> <blockquote><pre> SELECT name FROM sqlite_master WHERE type='table' ORDER BY name; </pre></blockquote> <p>For indices, <b>type</b> is equal to <b>'index'</b>, <b>name</b> is the name of the index and <b>tbl_name</b> is the name of the table to which the index belongs. For both tables and indices, the <b>sql</b> field is the text of the original CREATE TABLE or CREATE INDEX statement that created the table or index. For automatically created indices (used to implement the PRIMARY KEY or UNIQUE constraints) the <b>sql</b> field is NULL.</p> <p>The SQLITE_MASTER table is read-only. You cannot change this table using UPDATE, INSERT, or DELETE. The table is automatically updated by CREATE TABLE, CREATE INDEX, DROP TABLE, and DROP INDEX commands.</p> <p>Temporary tables do not appear in the SQLITE_MASTER table. At this time there is no way to get a listing of temporary tables and indices.</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/index.tcl.
1 2 3 | # # Run this TCL script to generate HTML for the index.html file. # | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | # # Run this TCL script to generate HTML for the index.html file. # set rcsid {$Id: index.tcl,v 1.49 2001/11/24 13:23:05 drh Exp $} puts {<html> <head><title>SQLite: An SQL Database Engine In A C Library</title></head> <body bgcolor=white> <h1 align=center>SQLite: An SQL Database Engine In A C Library</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>} puts {<h2>Introduction</h2> <p>SQLite is a C library that implements an embeddable SQL database engine. Programs that link with the SQLite library can have SQL database access without running a separate RDBMS process. |
︙ | ︙ |
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 12 13 14 15 16 17 18 19 20 21 22 | # # Run this Tcl script to generate the sqlite.html file. # set rcsid {$Id: lang.tcl,v 1.16 2001/11/24 13:23:05 drh Exp $} puts {<html> <head> <title>Query Language Understood By SQLite</title> </head> <body bgcolor=white> <h1 align=center> SQL As Understood By SQLite </h1>} puts "<p align=center> (This page was last modified on [lrange $rcsid 3 4] UTC) </p>" puts { <p>The SQLite library understands most of the standard SQL language. But it does omit some features while at the same time adding a few features of its own. This document attempts to describe percisely what parts of the SQL language SQLite does |
︙ | ︙ |
Changes to www/mingw.tcl.
1 2 3 | # # Run this Tcl script to generate the crosscompile.html file. # | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | # # Run this Tcl script to generate the crosscompile.html file. # set rcsid {$Id: mingw.tcl,v 1.3 2001/11/24 13:23:05 drh Exp $} puts {<html> <head> <title>Notes On How To Build MinGW As A Cross-Compiler</title> </head> <body bgcolor=white> <h1 align=center> Notes On How To Build MinGW As A Cross-Compiler </h1>} puts "<p align=center> (This page was last modified on [lrange $rcsid 3 4] UTC) </p>" puts { <p><a href="http://www.mingw.org/">MinGW</a> or <a href="http://www.mingw.org/">Minimalist GNU For Windows</a> is a version of the popular GCC compiler that builds Win95/Win98/WinNT binaries. See the website for details.</p> |
︙ | ︙ |
Changes to www/opcode.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 12 13 14 15 16 17 18 19 20 21 22 | # # Run this Tcl script to generate the sqlite.html file. # set rcsid {$Id: opcode.tcl,v 1.8 2001/11/24 13:23:05 drh Exp $} puts {<html> <head> <title>SQLite Virtual Machine Opcodes</title> </head> <body bgcolor=white> <h1 align=center> SQLite Virtual Machine Opcodes </h1>} puts "<p align=center> (This page was last modified on [lrange $rcsid 3 4] UTC) </p>" set fd [open [lindex $argv 0] r] set file [read $fd [file size [lindex $argv 0]]] close $fd set current_op {} foreach line [split $file \n] { |
︙ | ︙ |
Changes to www/speed.tcl.
1 2 3 | # # Run this Tcl script to generate the speed.html file. # | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | # # Run this Tcl script to generate the speed.html file. # set rcsid {$Id: speed.tcl,v 1.5 2001/11/24 13:23:05 drh Exp $ } puts {<html> <head> <title>Database Speed Comparison: SQLite versus PostgreSQL</title> </head> <body bgcolor=white> <h1 align=center> Database Speed Comparison </h1>} puts "<p align=center> (This page was last modified on [lrange $rcsid 3 4] UTC) </p>" puts { <h2>Executive Summary</h2> <p>A series of tests are run to measure the relative performance of SQLite version 1.0 and 2.0 and PostgreSQL version 6.4. |
︙ | ︙ |
Changes to www/sqlite.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 12 13 14 15 16 17 18 19 20 21 22 | # # Run this Tcl script to generate the sqlite.html file. # set rcsid {$Id: sqlite.tcl,v 1.16 2001/11/24 13:23:05 drh Exp $} puts {<html> <head> <title>sqlite: A program of interacting with SQLite databases</title> </head> <body bgcolor=white> <h1 align=center> sqlite: A program to administer SQLite databases </h1>} puts "<p align=center> (This page was last modified on [lrange $rcsid 3 4] UTC) </p>" puts { <p>The SQLite library includes a simple command-line utility named <b>sqlite</b> that allows the user to manually enter and execute SQL commands against an SQLite database. This document provides a brief introduction on how to use <b>sqlite</b>. |
︙ | ︙ |
Changes to www/tclsqlite.tcl.
1 2 3 | # # Run this Tcl script to generate the tclsqlite.html file. # | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | # # Run this Tcl script to generate the tclsqlite.html file. # set rcsid {$Id: tclsqlite.tcl,v 1.5 2001/11/24 13:23:05 drh Exp $} puts {<html> <head> <title>The Tcl interface to the SQLite library</title> </head> <body bgcolor=white> <h1 align=center> The Tcl interface to the SQLite library </h1>} puts "<p align=center> (This page was last modified on [lrange $rcsid 3 4] UTC) </p>" puts { <p>The SQLite library is designed to be very easy to use from a Tcl or Tcl/Tk script. This document gives an overview of the Tcl programming interface.</p> |
︙ | ︙ |
Changes to www/vdbe.tcl.
1 2 3 | # # Run this Tcl script to generate the vdbe.html file. # | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | # # Run this Tcl script to generate the vdbe.html file. # set rcsid {$Id: vdbe.tcl,v 1.9 2001/11/24 13:23:05 drh Exp $} puts {<html> <head> <title>The Virtual Database Engine of SQLite</title> </head> <body bgcolor=white> <h1 align=center> The Virtual Database Engine of SQLite </h1>} puts "<p align=center> (This page was last modified on [lrange $rcsid 3 4] UTC) </p>" puts { <blockquote><font color="red"><b> This document describes the virtual machine used in SQLite version 1.0. It has not been updated to reflect important changes that have occurred for |
︙ | ︙ |