Skip to main content

An improved version of .iterdump() for sqlite3

Project description


PyPI Changelog License

An improved version of .iterdump() for Python's sqlite3


Python's sqlite3 standard library module provides a method for dumping the contents of a database out as lines of SQL that can be used to recreate the database:

import sqlite3

conn = sqlite3.connect("mydb.db")
for line in conn.iterdump():

This mechanism is convenient but unfortunately does not support every SQLite feature. In particular it doesn't correctly dump databases that use SQLite's full-text search functionality from the FTS module. This library offers an improved alternative to the .iterdump() method.


Install this plugin using pip:

$ pip install sqlite-dump


To loop through lines of SQL that can recreate a SQLite database file:

import sqlite3
from sqlite_dump import iterdump

conn = sqlite3.connect(db_path)
for line in iterdump(conn):


To contribute to this library, first checkout the code. Then create a new virtual environment:

cd sqlite-dump
python -mvenv venv
source venv/bin/activate

Or if you are using pipenv:

pipenv shell

Now install the dependencies and tests:

pip install -e '.[test]'

To run the tests:


Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sqlite-dump-0.1.1.tar.gz (3.2 kB view hashes)

Uploaded Source

Built Distribution

sqlite_dump-0.1.1-py3-none-any.whl (7.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page