Skip to main content

DbConvert

Python SQLAlchemy Typer License: MIT

Convert your PostgreSQL or MySQL database to an SQLite file with ease. DbConvert provides both a modern Command-Line Interface (CLI) and a user-friendly Graphical User Interface (GUI).

Features

  • Convert PostgreSQL databases to SQLite
  • Convert MySQL databases to SQLite
  • Command-line interface for fast, scriptable usage
  • Graphical user interface for easy, no-code conversion
  • Preserves table structures and data
  • Supports all common data types
  • Rich progress display and error reporting

Installation

You can install DbConvert using pip:

pip install dbconvert

To use the GUI, install with the extra dependencies:

pip install dbconvert[gui]

Requirements

  • Python 3.8 or higher
  • PostgreSQL or MySQL database to convert from
  • (For GUI) Pillow >= 10.0.0

Usage

Command Line Interface (CLI)

dbconvert [COMMAND] [OPTIONS]

Commands:
  convert              Convert a database to SQLite
  supported-databases  Show supported database types
  gui                  Launch the graphical user interface

Options for convert:
  --source TEXT    Source database type (postgres, mysql)  [required]
  --conn TEXT      Source database connection string         [required]
  --sqlite TEXT    Target SQLite database file path         [required]
  --help          Show this help message and exit

Connection String Format

PostgreSQL
postgresql://[user[:password]@][host][:port][/dbname]
MySQL
mysql://[user[:password]@][host][:port][/dbname]

CLI Examples

  1. Convert a PostgreSQL database:
dbconvert convert --source postgres --conn "postgresql://user:password@dbhost:5432/mydb" --sqlite mydb.sqlite
  1. Convert a MySQL database:
dbconvert convert --source mysql --conn "mysql://user:password@dbhost:3306/production" --sqlite prod_backup.sqlite
  1. List supported database types:
dbconvert supported-databases
  1. Launch the GUI:
dbconvert gui

Graphical User Interface (GUI)

After installing with GUI support, launch the GUI with:

dbconvert gui
  • Select your source database type, enter the connection string, and choose the target SQLite file path.
  • Click "Convert" to start the conversion process.
  • The GUI provides progress and error reporting, and allows you to reset or clear output easily.

Development

Setup Development Environment

  1. Clone the repository:
git clone https://github.com/ysskrishna/dbconvert.git
cd dbconvert
  1. Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install development dependencies:
pip install -e .
  1. Install development dependencies with GUI support:
pip install -e ".[gui]"

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Support

If you encounter any issues or have questions, please open an issue on GitHub.

Release files for dbconvert 1.2.0

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

Source distribution (sdist)

Source distribution for dbconvert 1.2.0
File Size Uploaded
dbconvert-1.2.0.tar.gz 50.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dbconvert 1.2.0
File Interpreter ABI Platform
dbconvert-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 101.4 kB

Release files / dbconvert-1.2.0.tar.gz

Download URL dbconvert-1.2.0.tar.gz
Size 50.9 kB
Tags Source
SHA-256 checksum
How to use checksums
c7a1b61cc3e9fcae6b2f9488453178eb11fd2fedf39a17bc65ac11fa9024b7da
BLAKE2b-256 checksum
How to use checksums
b361d4bade90798e378ac20c44490fb78ff5a16b5723bde3b34557a33b388112
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.5

Release files / dbconvert-1.2.0-py3-none-any.whl

Download URL dbconvert-1.2.0-py3-none-any.whl
Size 50.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2d9fac3a84ff9501bbf4c22a18a94cb243a7b0f8edf43dfbd19f5050b46a358a
BLAKE2b-256 checksum
How to use checksums
4a39da90c2625ce3a395dc8d961ee8de7fa55eac5db21fcf8c66262f40d9f9ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.5

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.0

2 release 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