Skip to content

Repository files navigation

DB Drift

PyPI version Python License Downloads CI Code style: ruff

A command-line tool to visualize the differences between two DB states.

Table of Contents

Installation

Install the package from PyPI:

# Using pip
pip install db-drift

# Using pipx
pipx install db-drift

# Using poetry
poetry add db-drift

# Using pipenv
pipenv install db-drift

# Using uv
uv add db-drift

Features

  • Compare two database states and visualize the differences.

How to Use

Basic usage:

db-drift --source "source.db" --target "target.db"

The tool will generate an HTML report showing the differences between the two database states.

Examples

# Compare two SQLite databases
db-drift --source "old_version.db" --target "new_version.db"

# Specify custom output file
db-drift --source "db1.db" --target "db2.db" --output "my_report.html"

# Show version information
db-drift --version

Options

Option Description Default Required
-v, --version Show version information and exit - No
--dbms Specify the type of DBMS sqlite No
-o, --output Output filename for the drift report drift_report.html No
--source Connection string for the source database - Yes
--target Connection string for the target database - Yes
--verbose Enable verbose logging output No No

Supported DBMS Types

Currently supported database management systems:

  • sqlite - SQLite databases
  • oracle - Oracle databases (in active development)

Note: Support for PostgreSQL and MySQL is planned for future releases.

Oracle Support Status

Oracle support is available and actively evolving. The project can compare many Oracle object types today, but support is not yet considered end-to-end across all Oracle features and environments.

For the current scope, caveats, and examples, see docs/oracle-support.md and docs/supported-db-objects.md.

Troubleshooting

Common Issues

Getting Help

  • Check the examples directory for working samples
  • Review the issues page for known problems
  • Create a new issue if you encounter a bug or have a feature request

Contributing

Contributions are welcome! If you have any ideas, suggestions, or bug reports, please open an issue or submit a pull request.

Please read our CONTRIBUTING.md file for more details.

License

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

About

A command-line tool to visualize the differences between two DB states.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

3 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Used by

Contributors

Languages