APSW - Another Python SQLite Wrapper

apsw-3.3.7-r1 7th September 2006

APSW provides an SQLite 3 wrapper that provides the thinnest layer over
SQLite 3 possible. Everything you can do
from the C API to SQLite 3,
you can do from Python. Although APSW looks vaguely similar to the DBAPI, it is not compliant with that API and instead works the way
SQLite 3 does. (pysqlite is DBAPI
compliant - differences between apsw and pysqlite
2).

Table of contents

  • Download
    • Source and binaries
    • Source code control
  • SQLite
    version compatibility and benchmarking
  • Example
  • Building
  • API Reference
    • Module methods
    • Module constants
    • Connection class
    • Cursor class
  • Exceptions
    • Augmented stack
      traces
  • Types
  • Unicode
  • Multi-threading and re-entrancy
  • Tracing
    • Execution Tracer
    • Row Tracer
  • 64 bit hosts, Python 2.5
  • Execution model
  • DBAPI notes
    • Module Interface
    • Connection Objects
    • Cursor Objects
    • Type objects
    • Optional DB API
      Extensions
  • pysqlite differences
  • Copyright and License
  • Version History
    • 3.3.7-r1
    • 3.3.5-r1
    • 3.2.7-r1
    • 3.2.2-r1
    • 3.2.1-r1
    • 3.1.3-r1
    • 3.0.8-r3
    • 3.0.8-r2
    • 3.0.8-r1

Download

Source and binaries

You can download APSW from SourceForge at
http://sourceforge.net/project/showfiles.php?group_id=75211&package_id=113804.
There is a zip of the source as well as binary packages for Windows.

Some Linux distributions also have packages. Debian users can grab the
package python-apsw.
Gentoo users can grab the package dev-python/apsw.

Source code control

The source is controlled by Subversion accessible as https://svn.sourceforge.net/svnroot/bitpim/subprojects/apsw/trunk
and can be web browsed at http://svn.sourceforge.net/viewcvs.cgi/bitpim/subprojects/apsw/trunk/

SQLite version compatibility and
benchmarking

APSW binds to the C interface of SQLite. That interface is stable for each
major version of SQLite (ie the C interface for any SQLite 3.x is stable, but
SQLite 4.x would be an incompatible change). Consequently you can use APSW
against any revision of SQLite with the same major version number. There are
small enhancements to the C api over time, and APSW adds support for them as
appropriate. The version number of APSW covers the version these enhancements
were added. The vast majority of changes to SQLite are in the SQL syntax and
engine. Those will be picked up with any