skillfed

pysqlite3-binary

DB-API 2.0 interface for Sqlite 3.x

pysqlite3-binary v0.5.4.post2 918.3K downloads/30d#4,723 on PyPI243
Permissive license zlib/libpng Active released

What it is and what it does

pysqlite3-binary packages SQLite as a standalone, separately-installable Python module rather than relying on the standard library's sqlite3. This is useful when you need a specific version of SQLite, want to use custom extensions, or need features not available in your Python's bundled version. The package offers pre-built wheels containing a statically-linked, self-contained SQLite binary with no external dependencies, or you can build it against your system SQLite if you prefer.

The package includes several enhancements: user-defined window functions (requires SQLite >= 3.25), customizable flags and VFS when opening connections, incremental BLOB I/O, improved error messages, and native SQLite backup API. It follows the DB-API 2.0 interface, so it can often be used as a drop-in replacement for the standard sqlite3 module. However, the maintainer notes that new development is moving to a different project, so this package is in maintenance mode.

Use it for:

  • Use it when you need a newer version of SQLite than what your Python distribution provides.
  • Use it to enable SQLite extensions or custom features compiled into the bundled binary.
  • Use it as a portable, dependency-free SQLite driver for applications that must run on multiple systems.
  • Use it to access advanced SQLite features like user-defined window functions in older Python versions.
  • Use it when you need to link against a specific system SQLite version or configuration.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides a self-contained SQLite database driver for Python that can be installed separately from the standard library, with support for modern SQLite features and the option to use either bundled or system SQLite.

Yes, if you need a specific SQLite version, custom extensions, or features not in your Python's standard library. The permissive license, active maintenance, and zero runtime dependencies make it low-risk. However, note that the maintainer is directing new development elsewhere, so consider whether that project better suits your long-term needs. Pre-built wheels are available for common platforms, reducing install friction.

Install

pysqlite3-binary on PyPI

pip

pip install pysqlite3-binary

uv

uv add pysqlite3-binary

poetry

poetry add pysqlite3-binary

Installing pysqlite3-binary

Before you install

Medium install friction due to compiled binary wheels, but pre-built wheels are available for multiple Python versions on Linux x86_64. Actively maintained as of 2026-05-27, though the maintainer notes new development is moving elsewhere.

License in practice

Licensed under zlib/libpng (permissive), so you can use this in proprietary or open-source projects with minimal restrictions; attribution is typically required but no copyleft obligations apply.

Quickstart

pip install pysqlite3-binary

import pysqlite3.dbapi2 as sqlite3
conn = sqlite3.connect(':memory:')
cursor = conn.cursor()
cursor.execute('CREATE TABLE test (id INTEGER, name TEXT)')
conn.commit()

Requires a compatible Python version (wheels provided for cp38 through cp314 on Linux x86_64); other platforms or Python versions may require building from source with SQLite development headers present.

Verify before relying

  • Exact bundled SQLite version and which extensions are included in the binary wheels.
  • Performance characteristics compared to the standard library sqlite3 module.
  • Full scope of user-defined window functions and other advanced features mentioned.
  • Whether this package is suitable for new projects given the maintainer's note about development moving to cysqlite.

Package facts

License zlib/libpng (permissive)
Python support not specified
Install friction medium — platform-specific wheel
Runtime dependencies none
Maintenance actively maintained — 254 days since the last release
Last repo commit
First released
Downloads 918,286/month — #4,723 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pysqlite3_binary-0.5.4.post2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; pysqlite3_binary-0.5.4.post2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; pysqlite3_binary-0.5.4.post2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; pysqlite3_binary-0.5.4.post2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; pysqlite3_binary-0.5.4.post2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; pysqlite3_binary-0.5.4.post2-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl; pysqlite3_binary-0.5.4.post2-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: zlib/libpng LicenseOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: CProgramming Language :: PythonTopic :: Database :: Database Engines/ServersTopic :: Software Development :: Libraries :: Python Modules

Tags

sqlite database driver pythonself-contained sqlite modulesqlite replacement packagebundled sqlite pythonsqlite with custom extensions
sqlite-driverdb-api-2.0self-contained

More Python Modules packages