DbConvert
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
- Convert a PostgreSQL database:
dbconvert convert --source postgres --conn "postgresql://user:password@dbhost:5432/mydb" --sqlite mydb.sqlite
- Convert a MySQL database:
dbconvert convert --source mysql --conn "mysql://user:password@dbhost:3306/production" --sqlite prod_backup.sqlite
- List supported database types:
dbconvert supported-databases
- 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
- Clone the repository:
git clone https://github.com/ysskrishna/dbconvert.git
cd dbconvert
- Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
- Install development dependencies:
pip install -e .
- 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)
| File | Size | Uploaded | |
|---|---|---|---|
| dbconvert-1.2.0.tar.gz | 50.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|