Skip to main content

SQLCompyre

CI conda-forge Documentation pypi-version python-version

SQLCompyre is a simple Python package that allows you to find and explore the differences between SQL tables, schemas, and entire databases. It provides both a Python interface and a CLI, allowing it to be used for both ad-hoc comparisons as well as in-depth analyses.

SQLCompyre is designed to be dialect-agnostic and should, thus, work with most database systems out-of-the-box.

Usage example

Given a connection to a database, this snippet will print a report of the differences between two tables:

import sqlalchemy as sa
import sqlcompyre as sc

engine = sa.create_engine("<your_connection_string>")
comparison = sc.compare_tables(engine, "<left table name>", "<right table name>")

report = comparison.summary_report()
print(report)

To find more examples and get started, please visit the documentation.

Installation

SQLCompyre can be installed via pip or conda:

pip install sqlcompyre
# or
micromamba install sqlcompyre
# or
conda install sqlcompyre

Details on its usage can be found in the documentation.

Development

This project is managed by pixi. You can install the package in development mode using:

git clone https://github.com/quantco/sqlcompyre
cd sqlcompyre

pixi run pre-commit-install
pixi run postinstall

Running Tests Locally

  1. Make sure you have msodbcsql18 installed, or install it here

  2. Make sure you have Docker installed, or install it here

  3. Create a local test database with the following command:

docker compose up
  1. Set environment variable
export DB_CONNECTION_STRING="mssql+pyodbc://sa:Passw0rd@localhost:1435/master?driver=ODBC+Driver+18+for+SQL+Server&Encrypt=no"
  1. Navigate to the main directory of this repository and run pytest.
pixi run test

Metadata

Release files for sqlcompyre 2.0.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 sqlcompyre 2.0.0
File Size Uploaded
sqlcompyre-2.0.0.tar.gz 116.8 kB Details

Built distribution (wheel)

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

Total release size: 156.5 kB

Release files / sqlcompyre-2.0.0.tar.gz

Download URL sqlcompyre-2.0.0.tar.gz
Size 116.8 kB
Tags Source
SHA-256 checksum
How to use checksums
cdca99a3ea7e5ef31b87243b0ae1334ddb31784a5577c92f6620c4d72c19d9a4
BLAKE2b-256 checksum
How to use checksums
28d92d0d48bf66438d1ed4fde152460ea44aea95f453747045ae99aad8d214bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.0.1 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jan 17, 2025.

Transparency log

Release files / sqlcompyre-2.0.0-py3-none-any.whl

Download URL sqlcompyre-2.0.0-py3-none-any.whl
Size 39.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1de861985aaf49b94856a519becb7fe75d87159486ec699d47b869efb7846d0b
BLAKE2b-256 checksum
How to use checksums
20c5fdf9b0beca3754b3b8c63ae85a6ce79b52a73f70eac20802293dda18d5e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.0.1 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jan 17, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

2.0.0 This release

2 release files

1.0.1

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