2000-05-29 21:44:25 +04:00
|
|
|
#
|
|
|
|
# Run this TCL script to generate HTML for the index.html file.
|
|
|
|
#
|
2002-08-18 23:09:22 +04:00
|
|
|
set rcsid {$Id: index.tcl,v 1.67 2002/08/18 19:09:24 drh Exp $}
|
2000-05-29 21:44:25 +04:00
|
|
|
|
|
|
|
puts {<html>
|
2002-08-18 23:09:22 +04:00
|
|
|
<head><title>SQLite: An Embeddable SQL Database Engine</title></head>
|
2000-05-29 21:44:25 +04:00
|
|
|
<body bgcolor=white>
|
2002-08-18 23:09:22 +04:00
|
|
|
<h1 align=center>SQLite<br>An Embeddable SQL Database Engine</h1>
|
2000-05-29 21:44:25 +04:00
|
|
|
<p align=center>}
|
2001-11-24 16:23:04 +03:00
|
|
|
puts "This page was last modified on [lrange $rcsid 3 4] UTC<br>"
|
2000-08-17 14:22:34 +04:00
|
|
|
set vers [lindex $argv 0]
|
|
|
|
puts "The latest SQLite version is <b>$vers</b>"
|
2001-11-24 16:23:04 +03:00
|
|
|
puts " created on [exec cat last_change] UTC"
|
2000-05-29 21:44:25 +04:00
|
|
|
puts {</p>}
|
|
|
|
|
|
|
|
puts {<h2>Introduction</h2>
|
|
|
|
|
2001-11-01 17:41:34 +03:00
|
|
|
<p>SQLite is a C library that implements an embeddable SQL database engine.
|
2001-09-16 04:13:26 +04:00
|
|
|
Programs that link with the SQLite library can have SQL database
|
2000-08-18 13:58:51 +04:00
|
|
|
access without running a separate RDBMS process.
|
|
|
|
The distribution comes with a standalone command-line
|
|
|
|
access program (<a href="sqlite.html">sqlite</a>) that can
|
|
|
|
be used to administer an SQLite database and which serves as
|
|
|
|
an example of how to use the SQLite library.</p>
|
2000-06-08 23:38:36 +04:00
|
|
|
|
2001-09-20 05:44:42 +04:00
|
|
|
<p>SQLite is <b>not</b> a client library used to connect to a
|
|
|
|
big database server. SQLite <b>is</b> the server. The SQLite
|
|
|
|
library reads and writes directly to and from the database files
|
2001-09-28 21:47:14 +04:00
|
|
|
on disk.</p>}
|
2000-08-02 16:26:28 +04:00
|
|
|
|
2002-04-12 17:11:52 +04:00
|
|
|
puts {
|
|
|
|
<table align="right" hspace="10" cellpadding=0 cellspacing=0 broder=0>
|
|
|
|
<tr><td align="right" bgcolor="#cacae4">
|
|
|
|
<table border="2" width="100%" cellspacing=0 cellpadding=5><tr><td align="left">
|
|
|
|
Quick Links:
|
|
|
|
<ul>
|
|
|
|
<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>
|
2002-08-15 17:45:17 +04:00
|
|
|
<li><a href="quickstart.html">Quick start</a></li>
|
2002-04-12 17:11:52 +04:00
|
|
|
</ul>
|
2001-09-28 21:47:14 +04:00
|
|
|
</td></tr></table>
|
|
|
|
</td></tr>
|
2002-04-12 17:11:52 +04:00
|
|
|
</table>
|
|
|
|
}
|
2001-09-28 21:47:14 +04:00
|
|
|
|
|
|
|
puts {<h2>Features</h2>
|
2000-06-08 23:38:36 +04:00
|
|
|
|
|
|
|
<p><ul>
|
2002-08-14 00:45:39 +04:00
|
|
|
<li>Implements most of SQL92.
|
|
|
|
(<a href="omitted.html">Features not supported</a>)</li>
|
2001-09-29 03:11:24 +04:00
|
|
|
<li>A complete database (with multiple tables and indices) is
|
2002-08-13 04:01:16 +04:00
|
|
|
stored in a single disk file.</li>
|
2001-09-16 04:13:26 +04:00
|
|
|
<li>Atomic commit and rollback protect data integrity.</li>
|
2002-08-13 04:01:16 +04:00
|
|
|
<li>Database files can be freely shared between machines with
|
|
|
|
different byte orders.</li>
|
|
|
|
<li>Small memory footprint: less than 25K lines of C code.</li>
|
2001-09-25 05:50:59 +04:00
|
|
|
<li><a href="speed.html">Four times faster</a> than PostgreSQL.
|
|
|
|
Twice as fast as SQLite 1.0.</li>
|
2000-06-08 23:38:36 +04:00
|
|
|
<li>Very simple
|
2000-07-28 18:32:48 +04:00
|
|
|
<a href="c_interface.html">C/C++ interface</a> requires the use of only
|
|
|
|
three functions and one opaque structure.</li>
|
2002-08-14 00:45:39 +04:00
|
|
|
<li><a href="tclsqlite.html">TCL bindings</a> included.
|
|
|
|
Bindings for many other languages available separately.</li>
|
2002-08-13 04:01:16 +04:00
|
|
|
<li>Simple, well-commented source code.</li>
|
2002-08-14 00:45:39 +04:00
|
|
|
<li>Automated test suite provides near 100% code coverage.</li>
|
2001-09-16 04:13:26 +04:00
|
|
|
<li>Self-contained: no external dependencies.</li>
|
2002-08-14 00:45:39 +04:00
|
|
|
<li>Built and tested under Linux and Windows.</li>
|
|
|
|
<li>Sources are in the public domain. Use for any purpose.</li>
|
2000-06-08 23:38:36 +04:00
|
|
|
</ul>
|
|
|
|
</p>
|
2001-09-20 05:44:42 +04:00
|
|
|
}
|
|
|
|
|
|
|
|
puts {<h2>Current Status</h2>
|
2000-06-08 23:38:36 +04:00
|
|
|
|
2002-03-29 21:16:04 +03:00
|
|
|
<p>A <a href="changes.html">Change Summary</a> is available on this
|
|
|
|
website. You can also access a detailed
|
2002-04-12 17:11:52 +04:00
|
|
|
<a href="http://cvs.hwaci.com:2080/sqlite/timeline">change history</a>,
|
|
|
|
<a href="http://cvs.hwaci.com:2080/sqlite/rptview?rn=2">view open bugs</a>,
|
|
|
|
or
|
|
|
|
<a href="http://cvs.hwaci.com:2080/sqlite/tktnew">report new bugs</a>
|
|
|
|
at the
|
2002-03-29 21:16:04 +03:00
|
|
|
<a href="http://cvs.hwaci.com:2080/sqlite/">CVS server</a>.</p>
|
|
|
|
|
|
|
|
<p>Complete source code and precompiled binaries for the latest release are
|
2002-03-27 15:52:47 +03:00
|
|
|
<a href="download.html">available for download</a> on this site. You
|
|
|
|
can also obtain the latest changes by anonymous CVS access:
|
|
|
|
<blockquote><pre>
|
|
|
|
cvs -d :pserver:anonymous@cvs.hwaci.com:/home/cvs/sqlite login
|
|
|
|
cvs -d :pserver:anonymous@cvs.hwaci.com:/home/cvs/sqlite checkout sqlite
|
|
|
|
</pre></blockquote>
|
|
|
|
When prompted for a password, enter "anonymous".
|
|
|
|
</p>
|
|
|
|
|
|
|
|
<p>Note that the CVS server is located on a cable modem with a dynamic
|
|
|
|
IP address. The IP address changes every 3 or 4 months. After an
|
|
|
|
IP address change
|
|
|
|
occurs it usually takes a day or two for the new DNS information to propagate.
|
|
|
|
So if you have trouble accessing the CVS server, it could be because the
|
|
|
|
IP address has recently changed. Try again in a few days.
|
2001-09-29 03:11:24 +04:00
|
|
|
</p>
|
2001-04-05 20:49:44 +04:00
|
|
|
|
2001-09-29 03:11:24 +04:00
|
|
|
<p>
|
2001-12-22 22:27:39 +03:00
|
|
|
Whenever either of the first two digits in the version number
|
|
|
|
for SQLite change, it means that the underlying file format
|
2002-08-18 23:09:22 +04:00
|
|
|
has changed. Usually these changes are backwards compatible.
|
|
|
|
See <a href="formatchng.html">formatchng.html</a>
|
2001-12-22 22:27:39 +03:00
|
|
|
for additional information.
|
2001-09-29 03:11:24 +04:00
|
|
|
</p>
|
2002-08-13 04:01:16 +04:00
|
|
|
}
|
|
|
|
|
2002-08-18 23:09:22 +04:00
|
|
|
puts {<h2>Major Database File Format Change - Version 2.6.0 - 2002 July 17</h2>
|
2002-08-13 04:01:16 +04:00
|
|
|
|
|
|
|
<p>Beginning with version 2.6.0, the SQLite database file format changed
|
|
|
|
in an incompatible way. If you open a database file from version 2.5.6
|
|
|
|
or earlier with version 2.6.0 or later of the library, then the file format
|
|
|
|
will be converted automatically. This is an irreversible operation. Once
|
|
|
|
the conversion occurs, you will no longer be able to access the database
|
|
|
|
file from older versions of the library. If the database is large, the
|
|
|
|
conversion might take some time. (Allow 1 to 2 seconds per megabyte
|
|
|
|
of database under Linux.) If the database is read-only,
|
|
|
|
the conversion cannot occur and the attempt to open the database will
|
|
|
|
fail.
|
|
|
|
It is suggested that you make backup copies of older database files
|
|
|
|
before attempting to open them with version 2.6.0 or later of the library.</p>
|
|
|
|
}
|
2000-06-08 23:38:36 +04:00
|
|
|
|
2002-08-13 04:01:16 +04:00
|
|
|
puts {<h2>Documentation</h2>
|
2000-05-29 21:44:25 +04:00
|
|
|
|
2000-06-08 23:38:36 +04:00
|
|
|
<p>The following documentation is currently available:</p>
|
2000-05-29 21:44:25 +04:00
|
|
|
|
2000-06-08 23:38:36 +04:00
|
|
|
<p><ul>
|
2002-08-15 17:45:17 +04:00
|
|
|
<li>A <a href="quickstart.html">Quick Start</a> guide to using SQLite in
|
|
|
|
5 minutes or less.</li>
|
2001-11-24 03:31:46 +03:00
|
|
|
<li><a href="faq.html">Frequently Asked Questions</a> are available online.</li>
|
2000-06-08 23:38:36 +04:00
|
|
|
<li>Information on the <a href="sqlite.html">sqlite</a>
|
|
|
|
command-line utility.</li>
|
2002-08-14 04:08:12 +04:00
|
|
|
<li>SQLite is <a href="datatypes.html">typeless</a>.
|
2000-06-09 18:14:32 +04:00
|
|
|
<li>The <a href="lang.html">SQL Language</a> subset understood by SQLite.</li>
|
2000-06-08 23:38:36 +04:00
|
|
|
<li>The <a href="c_interface.html">C/C++ Interface</a>.</li>
|
2001-09-29 03:11:24 +04:00
|
|
|
<li>The <a href="tclsqlite.html">Tcl Binding</a> to SQLite.</li>
|
2000-06-09 07:47:19 +04:00
|
|
|
<li>The <a href="arch.html">Architecture of the SQLite Library</a> describes
|
2000-06-09 18:14:32 +04:00
|
|
|
how the library is put together.</li>
|
2000-06-09 07:51:26 +04:00
|
|
|
<li>A description of the <a href="opcode.html">virtual machine</a> that
|
2000-06-09 18:14:32 +04:00
|
|
|
SQLite uses to access the database.</li>
|
2002-08-18 23:09:22 +04:00
|
|
|
<li>A description of the
|
|
|
|
<a href="fileformat.html">database file format</a> used by SQLite.
|
2002-03-27 15:52:47 +03:00
|
|
|
<li>A <a href="speed.html">speed comparison</a> between SQLite, PostgreSQL,
|
|
|
|
and MySQL.</li>
|
2000-06-08 23:38:36 +04:00
|
|
|
</ul>
|
|
|
|
</p>
|
|
|
|
|
2002-08-18 23:09:22 +04:00
|
|
|
<p>The SQLite source code is 30% comment. These comments are
|
2000-06-08 23:38:36 +04:00
|
|
|
another important source of information. </p>
|
2001-10-31 18:44:46 +03:00
|
|
|
|
2000-05-29 21:44:25 +04:00
|
|
|
}
|
|
|
|
|
2000-05-29 22:50:16 +04:00
|
|
|
puts {
|
2001-09-20 05:44:42 +04:00
|
|
|
<table align="right">
|
|
|
|
<tr><td align="center">
|
|
|
|
<a href="http://www.yahoogroups.com/subscribe/sqlite">
|
|
|
|
<img src="http://www.egroups.com/img/ui/join.gif" border=0 /><br />
|
|
|
|
Click to subscribe to sqlite</a>
|
|
|
|
</td></tr>
|
|
|
|
</table>
|
2000-05-29 22:50:16 +04:00
|
|
|
<a name="mailinglist" />
|
|
|
|
<h2>Mailing List</h2>
|
2001-09-20 05:44:42 +04:00
|
|
|
<p>A mailing list has been set up on yahooGroups for discussion of
|
2000-05-29 21:44:25 +04:00
|
|
|
SQLite design issues or for asking questions about SQLite.</p>
|
2001-09-20 05:44:42 +04:00
|
|
|
}
|
2000-05-29 21:44:25 +04:00
|
|
|
|
2001-10-31 18:44:46 +03:00
|
|
|
puts {<h2>Professional Support and Custom Modifications</h2>}
|
|
|
|
|
|
|
|
puts {
|
|
|
|
<p>
|
|
|
|
If you would like professional support for SQLite
|
|
|
|
or if you want custom modifications to SQLite preformed by the
|
|
|
|
original author, these services are available for a modest fee.
|
|
|
|
For additional information contact:</p>
|
|
|
|
|
|
|
|
<blockquote>
|
|
|
|
D. Richard Hipp <br />
|
|
|
|
Hwaci - Applied Software Research <br />
|
|
|
|
704.948.4565 <br />
|
|
|
|
<a href="mailto:drh@hwaci.com">drh@hwaci.com</a>
|
|
|
|
</blockquote>
|
|
|
|
}
|
|
|
|
|
2001-09-20 05:44:42 +04:00
|
|
|
puts {<h2>Building From Source</h2>}
|
2000-05-29 21:44:25 +04:00
|
|
|
|
2000-08-17 14:22:34 +04:00
|
|
|
puts {
|
2000-08-04 17:49:02 +04:00
|
|
|
<p>To build sqlite under Unix, just unwrap the tarball, create a separate
|
2000-06-02 17:27:59 +04:00
|
|
|
build directory, run configure from the build directory and then
|
|
|
|
type "make". For example:</p>
|
|
|
|
|
|
|
|
<blockquote><pre>
|
2000-06-08 23:38:36 +04:00
|
|
|
$ tar xzf sqlite.tar.gz <i> Unpacks into directory named "sqlite" </i>
|
|
|
|
$ mkdir bld <i> Create a separate build directory </i>
|
2000-06-02 17:27:59 +04:00
|
|
|
$ cd bld
|
|
|
|
$ ../sqlite/configure
|
2000-06-08 23:38:36 +04:00
|
|
|
$ make <i> Builds "sqlite" and "libsqlite.a" </i>
|
|
|
|
$ make test <i> Optional: run regression tests </i>
|
2000-06-02 17:27:59 +04:00
|
|
|
</pre></blockquote>
|
2002-08-18 23:09:22 +04:00
|
|
|
|
|
|
|
<p>If you prefer, you can also build by making whatever modifications
|
|
|
|
you desire to the file "Makefile.linux-gcc" and then executing that
|
|
|
|
makefile. Tha latter method is used for all official development
|
|
|
|
and testing of SQLite and for building the precompiled
|
|
|
|
binaries found on this website. Windows binaries are generated by
|
|
|
|
cross-compiling from Linux using <a href="www.mingw.org">MinGW</a></p>
|
2000-06-03 23:28:48 +04:00
|
|
|
}
|
2000-05-29 21:44:25 +04:00
|
|
|
|
|
|
|
puts {<h2>Related Sites</h2>
|
|
|
|
|
2002-08-13 04:01:16 +04:00
|
|
|
<p>
|
|
|
|
For information bindings of SQLite to other programming languages
|
|
|
|
(Perl, Python, Ruby, PHP, etc.) and for a list of programs currently
|
|
|
|
using SQLite, visit the Wiki documentation at:
|
|
|
|
</p>
|
2002-04-04 00:50:21 +04:00
|
|
|
|
2002-08-13 04:01:16 +04:00
|
|
|
<blockquote>
|
|
|
|
<a href="http://cvs.hwaci.com:2080/sqlite/wiki">
|
|
|
|
http://cvs.hwaci.com:2080/sqlite/wiki</a>
|
|
|
|
</blockquote>
|
|
|
|
}
|
2000-05-29 21:44:25 +04:00
|
|
|
|
|
|
|
puts {
|
|
|
|
</body></html>}
|