Skip to main content

sqlite-utils

PyPI Changelog Python 3.x Tests Documentation Status codecov License discord

Python CLI utility and library for manipulating SQLite databases.

Some feature highlights

Upgrading from sqlite-utils 3.x? See the 4.0 upgrade guide.

Read more on my blog, in this series of posts on New features in sqlite-utils and other entries tagged sqlite-utils.

Installation

pip install sqlite-utils

Or if you use Homebrew for macOS:

brew install sqlite-utils

Using as a CLI tool

Now you can do things with the CLI utility like this:

$ sqlite-utils memory dogs.csv "select * from t"
[{"id": 1, "age": 4, "name": "Cleo"},
 {"id": 2, "age": 2, "name": "Pancakes"}]

$ sqlite-utils insert dogs.db dogs dogs.csv --csv
[####################################]  100%

$ sqlite-utils tables dogs.db --counts
[{"table": "dogs", "count": 2}]

$ sqlite-utils dogs.db "select id, name from dogs"
[{"id": 1, "name": "Cleo"},
 {"id": 2, "name": "Pancakes"}]

$ sqlite-utils dogs.db "select * from dogs" --csv
id,age,name
1,4,Cleo
2,2,Pancakes

$ sqlite-utils dogs.db "select * from dogs" --table
  id    age  name
----  -----  --------
   1      4  Cleo
   2      2  Pancakes

You can import JSON data into a new database table like this:

$ curl https://api.github.com/repos/simonw/sqlite-utils/releases \
    | sqlite-utils insert releases.db releases - --pk id

Or for data in a CSV file:

$ sqlite-utils insert dogs.db dogs dogs.csv --csv

sqlite-utils memory lets you import CSV or JSON data into an in-memory database and run SQL queries against it in a single command:

$ cat dogs.csv | sqlite-utils memory - "select name, age from stdin"

See the full CLI documentation for comprehensive coverage of many more commands.

Using as a library

You can also import sqlite_utils and use it as a Python library like this:

import sqlite_utils
db = sqlite_utils.Database("demo_database.db")
# This line creates a "dogs" table if one does not already exist:
db["dogs"].insert_all([
    {"id": 1, "age": 4, "name": "Cleo"},
    {"id": 2, "age": 2, "name": "Pancakes"}
], pk="id")

Check out the full library documentation for everything else you can do with the Python library.

Related projects

  • Datasette: A tool for exploring and publishing data
  • csvs-to-sqlite: Convert CSV files into a SQLite database
  • db-to-sqlite: CLI tool for exporting a MySQL or PostgreSQL database as a SQLite file
  • dogsheep: A family of tools for personal analytics, built on top of sqlite-utils

Metadata

Release files for sqlite-utils 4.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sqlite-utils 4.2.1
File Size Uploaded
sqlite_utils-4.2.1.tar.gz 311.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sqlite-utils 4.2.1
File Interpreter ABI Platform
sqlite_utils-4.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 411.2 kB

Release files / sqlite_utils-4.2.1.tar.gz

Download URL sqlite_utils-4.2.1.tar.gz
Size 311.7 kB
Tags Source
SHA-256 checksum
How to use checksums
76114b6a5414714e6c70e5fa5c4781b301b590f6951b5da39c8cc60c21382ba1
BLAKE2b-256 checksum
How to use checksums
7e6b4a7b3d20c92e6c7acedc96ef620df8e1ea8f94a26a41ab788c1c08055815
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / sqlite_utils-4.2.1-py3-none-any.whl

Download URL sqlite_utils-4.2.1-py3-none-any.whl
Size 99.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7fbaee670713b25eceba05779b844f0895efaf680d9a226fa5ba7dfe165721c5
BLAKE2b-256 checksum
How to use checksums
ebd0a20b9ea8686ea14f171582f3ce9f9b40b8fbb858fea744896191c09f2c2f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release history Release notifications | RSS feed

This release
Image

4.2.1 This release

2 release files

Image

4.2

2 release files

Image

4.1.1

2 release files

Image

4.1

2 release files

Image

4.0

2 release files

Image

3.39.1

2 release files

Image

3.39

2 release files

Image

3.38

2 release files

Image

3.37

2 release files

Image

3.36

2 release files

Image

3.35

2 release files

Image

3.34

2 release files

Image

3.33

2 release files

Image

3.32.1

2 release files

Image

3.32

2 release files

Image

3.31

2 release files

Image

3.30

2 release files

Image

3.29

2 release files

Image

3.28

2 release files

Image

3.27

2 release files

Image

3.26

2 release files

Image

3.25.1

2 release files

Image

3.25

2 release files

Image

3.24

2 release files

Image

3.23

2 release files

Image

3.22.1

2 release files

Image

3.22

2 release files

Image

3.21

2 release files

Image

3.20

2 release files

Image

3.19

2 release files

Image

3.18

2 release files

Image

3.17.1

2 release files

Image

3.17

2 release files

Image

3.16

2 release files

Image

3.15.1

2 release files

Image

3.15

2 release files

Image

3.14

2 release files

Image

3.13

2 release files

Image

3.12

2 release files

Image

3.11

2 release files

Image

3.10

2 release files

Image

3.9.1

2 release files

Image

3.9

2 release files

Image

3.8

2 release files

Image

3.7

2 release files

Image

3.6

2 release files

Image

3.5

2 release files

Image

3.4.1

2 release files

Image

3.4

2 release files

Image

3.3

2 release files

Image

3.2.1

2 release files

Image

3.2

2 release files

Image

3.1.1

2 release files

Image

3.1

2 release files

Image

3.0

2 release files

Image

2.23

2 release files

Image

2.22

2 release files

Image

2.21

2 release files

Image

2.20

2 release files

Image

2.19

2 release files

Image

2.18

2 release files

Image

2.17

2 release files

Image

2.16.1

2 release files

Image

2.16

2 release files

Image

2.15.1

2 release files

Image

2.15

1 release file

Image

2.14.1

1 release file

Image

2.14

1 release file

Image

2.13

1 release file

Image

2.12

1 release file

Image

2.11

1 release file

Image

2.10.1

1 release file

Image

2.10

1 release file

Image

2.9.1

1 release file

Image

2.9

1 release file

Image

2.8

1 release file

Image

2.7.2

1 release file

Image

2.7.1

1 release file

Image

2.7

1 release file

Image

2.6

1 release file

Image

2.5

1 release file

Image

2.4.4

1 release file

Image

2.4.3

1 release file

Image

2.4.2

1 release file

Image

2.4.1

1 release file

Image

2.4

1 release file

Image

2.3.1

1 release file

Image

2.3

1 release file

Image

2.2.1

1 release file

Image

2.2

1 release file

Image

2.1

1 release file

Image

2.0.1

1 release file

Image

2.0

1 release file

Image

1.12.1

1 release file

Image

1.12

1 release file

Image

1.11

1 release file

Image

1.10

1 release file

Image

1.9

1 release file

Image

1.8

1 release file

Image

1.7.1

1 release file

Image

1.7

1 release file

Image

1.6

1 release file

Image

1.5

1 release file

Image

1.4.1

1 release file

Image

1.4

1 release file

Image

1.3

1 release file

Image

1.2.2

1 release file

Image

1.2.1

1 release file

Image

1.2

1 release file

Image

1.1

1 release file

Image

1.0.1

1 release file

Image

1.0

1 release file

Image

0.14

1 release file

Image

0.13

1 release file

Image

0.12

1 release file

Image

0.11

1 release file

Image

0.10

1 release file

Image

0.9

1 release file

Image

0.8.1

1 release file

Image

0.8

1 release file

Image

0.7

1 release file

Image

0.6.1

1 release file

Image

0.5

1 release file

Image

0.4

1 release file

Image

0.3.1

1 release file

Image

0.3

1 release file

Image

0.2

1 release file

Image Anthropic, PBC Visionary sponsor Image Bloomberg Visionary sponsor Image Hudson River Trading Visionary sponsor Image Meta Visionary sponsor Image NVIDIA Visionary sponsor Image Microsoft Sustainability sponsor Image Depot Continuous Integration Image AWS Cloud computing and Security Sponsor Image Datadog Monitoring Image Fastly CDN Image Google Download Analytics Image Sentry Error logging Image StatusPage Status page