Skip to main content

SQLite Workbench

Overview

SQLite Workbench is a responsive PySide6 desktop application and Python package for working with SQLite databases. Slow operations run outside the GUI thread, and large views use bounded chunks or pagination instead of loading complete datasets into memory.

Features

  • Create, open, inspect, attach, back up, and restore SQLite databases
  • Browse tables, views, indexes, triggers, columns, foreign keys, and DDL
  • Use multiple SQL tabs with syntax highlighting, autocomplete, formatting, history, and query plans
  • Execute selections, individual statements, or atomic multi-statement scripts
  • Browse and edit paginated table data using complete primary keys for safe UPDATE and DELETE
  • Import CSV and Excel files transactionally in chunks
  • Export queries and tables as CSV, Excel, JSON, JSON Lines, or SQL dumps
  • Run integrity checks, VACUUM, ANALYZE, supported PRAGMAs, and database-wide searches in workers
  • Switch between system, light, and dark themes
  • Restore sessions and autosaved SQL after an unexpected shutdown
  • Inspect BLOB values as bounded hex/text previews or recognized images

Installation

pip install sqlite-workbench

For development:

git clone <repository-url>
cd sqlite-workbench
python -m venv .venv
source .venv/bin/activate
python -m pip install -e ".[dev]"

On Windows, activate the environment with .venv\Scripts\activate.

Usage

sqlite-workbench example.db

Use Ctrl+Enter for the selection/current statement and F5 for the complete SQL tab. Open database objects from Database Explorer; Ctrl+P searches tables and columns.

CLI

sqlite-workbench [--readonly] [database]
sqlite-workbench
sqlite-workbench example.sqlite
sqlite-workbench --readonly production.db
python -m sqlite_workbench example.db

Python API

from sqlite_workbench import Database

db = Database("example.db")
db.initialize()
tables = db.tables()
result = db.execute("SELECT * FROM customers WHERE country = ?", ["PL"])

The supported public exports are Database, QueryResult, and SQLiteWorkbenchError.

Screenshots

Screenshots will be added after final visual review. No screenshot assets are currently included.

Development

The src/ package separates core, gui, models, workers, importers, exporters, and utils. Install it in editable mode with python -m pip install -e ".[dev]".

Testing

pytest
ruff check .
QT_QPA_PLATFORM=offscreen pytest

Building

python -m build
twine check dist/*

The build creates a wheel and source distribution under dist/.

Publishing to PyPI

TestPyPI is recommended before production:

python -m twine upload --repository testpypi dist/*
python -m twine upload dist/*

Publishing requires owner credentials and must be performed explicitly by the owner.

License

SQLite Workbench is distributed under the MIT License. See LICENSE.

Download files

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

Source Distribution

sqlite_workbench-0.1.1.tar.gz (58.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sqlite_workbench-0.1.1-py3-none-any.whl (58.8 kB view details)

Uploaded Python 3

File details

Details for the file sqlite_workbench-0.1.1.tar.gz.

File metadata

  • Download URL: sqlite_workbench-0.1.1.tar.gz
  • Upload date:
  • Size: 58.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for sqlite_workbench-0.1.1.tar.gz
Algorithm Hash digest
SHA256 dba0e61bc091c8354a838259e642c0b9a8822524966545db39ae90546618b1d0
MD5 eac4c62c5a51a5eb75190d33c87787fb
BLAKE2b-256 faecd36fc31493ee519cad77cc4e62e78eb3b95d9987ea00ea67f8bf4553d471

See more details on using hashes here.

File details

Details for the file sqlite_workbench-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for sqlite_workbench-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6d2f149a4e584d6028ef21b690377881dab6f95100723db7fd078e93bce414a6
MD5 0e2def79a6b88fa52610cae06cc9511d
BLAKE2b-256 ad3c7f2669ff3be5d39eae159584b247e855addc2af2e1a737d743be4670c1e3

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 files

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