Skip to main content

sqlce

C++ Python Platform License Reverse engineered

Ru README

Reverse engineering of the .sdf (SQL Server Compact Edition) binary file format.

Analysis of the format's internal structure based on decompiled SQL CE components. The goal is to provide a cross-platform, runtime-independent implementation for reading .sdf files.

Intended solely for interoperability with existing .sdf files. Does not contain any original product source code.

Browser version (WebAssembly, runs locally - the file never leaves your tab): boykopovar.github.io/sqlce

  • core/ - C++ parser implementation
  • bindings/ - Bindings for the C++ library to other languages
  • python/sqlce/ - Python API
  • research/ - Experimental scripts

Example

pip install sqlce
from sqlce import SqlceDatabase

db = SqlceDatabase("example.sdf", password="secret123")

for table_name in db.list_tables():
    print(table_name, db.table_schema(table_name))
    for row in db.read_table(table_name):
        print(row)

The current implementation supports reading the list of tables, table schemas, and table contents (including password-protected databases). It is implemented in C++.

Reading encrypted .sdf version 3.5 files is not currently supported (unencrypted files are supported).

Testing

pytest

The tests use a locally installed SQL CE engine (via ODBC) to generate .sdf files containing predefined data and verify that the parser produces identical results. Therefore, the test suite can only be run on Windows with SQL Server Compact 4.0 installed. Test files are created in tests/sdf/ and are automatically removed before and after each test run.

Documentation

The documentation is currently concise but includes usage examples and tests.

Documentation

Code Style Conventions (Pull requests are welcome.)

Download files

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

Source Distribution

sqlce-0.2.0.tar.gz (80.8 kB view details)

Uploaded Source

Built Distributions

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

sqlce-0.2.0-cp313-cp313-win_amd64.whl (197.3 kB view details)

Uploaded CPython 3.13Windows x86-64

sqlce-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (248.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

sqlce-0.2.0-cp312-cp312-win_amd64.whl (197.3 kB view details)

Uploaded CPython 3.12Windows x86-64

sqlce-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (247.9 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

sqlce-0.2.0-cp311-cp311-win_amd64.whl (195.8 kB view details)

Uploaded CPython 3.11Windows x86-64

sqlce-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (249.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

sqlce-0.2.0-cp310-cp310-win_amd64.whl (193.6 kB view details)

Uploaded CPython 3.10Windows x86-64

sqlce-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (247.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

sqlce-0.2.0-cp39-cp39-win_amd64.whl (194.1 kB view details)

Uploaded CPython 3.9Windows x86-64

sqlce-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (248.0 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

sqlce-0.2.0-cp38-cp38-win_amd64.whl (194.1 kB view details)

Uploaded CPython 3.8Windows x86-64

sqlce-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (247.3 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

Details for the file sqlce-0.2.0.tar.gz.

File metadata

  • Download URL: sqlce-0.2.0.tar.gz
  • Upload date:
  • Size: 80.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for sqlce-0.2.0.tar.gz
Algorithm Hash digest
SHA256 2e8182a64edeedf03e78093a43ea99721c7113315ea6203c5328cc80ac47546a
MD5 8484a8a40a670d291ede08aa32bbe462
BLAKE2b-256 7c7fc3f16d058b62b62fc6acc18fda5cdec3c28d486254256ea42c5a5050ec45

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.0.tar.gz:

Publisher: release.yml on boykopovar/sqlce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sqlce-0.2.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: sqlce-0.2.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 197.3 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for sqlce-0.2.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 f83ef8fc3b9675e5c3d297308c56789defb4706e80d08e69dce1581ab0b6e5a5
MD5 989572bdb60d5939ea0c0275e0e9d20a
BLAKE2b-256 58a64bd3f5e2b9a76aa62e305246dd817a0f17d5b80e4d9034881a5a7616830f

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.0-cp313-cp313-win_amd64.whl:

Publisher: release.yml on boykopovar/sqlce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sqlce-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlce-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9eb976c7e527e644fa6aaf265825b73bcca17a5a5f8a4c3cb2ea10c14636a691
MD5 ad2c8e430d66fa89e1bfbc8db347150b
BLAKE2b-256 5fe9edcfade0ce654139f6717ba5f254f04e463c7055eb5cac84e220001c0134

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on boykopovar/sqlce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sqlce-0.2.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: sqlce-0.2.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 197.3 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for sqlce-0.2.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e02148057155f796c1eebafea73af017cca41ba269e210fb7a3ad052effe522f
MD5 796f0e305e7bd3d72982acf50b5b9382
BLAKE2b-256 8e8c0c4fc46b8fa7b0f155ed37af86c530044bbb7c44e17bc6d843a0627008a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.0-cp312-cp312-win_amd64.whl:

Publisher: release.yml on boykopovar/sqlce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sqlce-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlce-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 18e0c8c74e60224d2de9290987d73a05eb777f7be92763ce3407aee10b4f9577
MD5 90dfa4b7186a48b9dbda1429f2ba91ed
BLAKE2b-256 54f1143823fea026be5c0a52208521e1fdfec683420ec55c9024a755069e18db

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on boykopovar/sqlce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sqlce-0.2.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: sqlce-0.2.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 195.8 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for sqlce-0.2.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 8f6d73c956404c47519b1f2784a999a13b3e5359a3666379586b9bbdcded3f1e
MD5 eee958acdf11b5082d0af99faa70b93b
BLAKE2b-256 d521a7521fc151986a0db94befd23f9697a24a3eee4a2b38a01c14babe1aea43

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.0-cp311-cp311-win_amd64.whl:

Publisher: release.yml on boykopovar/sqlce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sqlce-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlce-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 353c431026d4d2d7219b96281666f9397add0ad7c5e35a7b020617c3c6508678
MD5 1ce009d8d39324fe2d814bc495ab2ba3
BLAKE2b-256 d656baf38bb35fc78d282225e36084fa71921cc8efdabb560bdee09c8abfa5c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on boykopovar/sqlce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sqlce-0.2.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: sqlce-0.2.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 193.6 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for sqlce-0.2.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 32958f3d5de02256bf9803e6a97985d89e869e30d643d74996ac61f7d3203c1a
MD5 34359b9d371084f1db50275becedea22
BLAKE2b-256 72df6ef9127a2b006201720ff225349c6ee5ac9704eda50958d5c04b23843e7d

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.0-cp310-cp310-win_amd64.whl:

Publisher: release.yml on boykopovar/sqlce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sqlce-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlce-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8f67fd08db06dcaf2759d48ba55571988ebe8b31f7a9e16d2ca44c7f21e28c8c
MD5 5be941fe35be25923fc4c27173235a95
BLAKE2b-256 b2f7e09665fa67d42ea6098d8e4c7526c3be1e21b7d943de27013e45b4bdaf2e

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on boykopovar/sqlce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sqlce-0.2.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: sqlce-0.2.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 194.1 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for sqlce-0.2.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 402e957533ecc0bac64d7646983bf17fe264867a6843c295ba1c7097bbd1ff8d
MD5 2a266594e7443d7378652ce3cec9b551
BLAKE2b-256 e4ef686a2f82f9870f6cf272e92ec96f936be4eb9cbf05fe5ede53df5ab46350

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.0-cp39-cp39-win_amd64.whl:

Publisher: release.yml on boykopovar/sqlce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sqlce-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlce-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 973a0329eae5b4ad232c80966f9d574adaf4f8d1da80f59e3c8ffd15059d31ba
MD5 f8acb4c60d0a6733f4c918892b3ed7b0
BLAKE2b-256 83112879f85ac6a74f2a429851faf2801cd1ebf12a4b7e4ec6d907757a660e50

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on boykopovar/sqlce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sqlce-0.2.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: sqlce-0.2.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 194.1 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for sqlce-0.2.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 73851803597248c3b5ad3f7dcd01503a6a2f065edc7799fd959505fb49216b2f
MD5 02fde63b6581b90043035a3c519a52e6
BLAKE2b-256 efae08c51ff02e9892a8dfeabfb8c80ff04616c1944ef500a362d19888f80ba7

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.0-cp38-cp38-win_amd64.whl:

Publisher: release.yml on boykopovar/sqlce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sqlce-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlce-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2f518d2da35f92b6555c65c34e4dfec242c06e8d7ea5e528b5234c9fb3eb491a
MD5 d1326418bc040f2816aa04c8bac25015
BLAKE2b-256 b13452b04af4cb7af340efcb775e7cf771ec1ba6dc4925a339459b02010a940d

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on boykopovar/sqlce

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.3.1

13 files

0.3.0

13 files

0.2.9

13 files

0.2.8

13 files

0.2.7

13 files

0.2.6

13 files

0.2.5

13 files

0.2.4

13 files

0.2.3

13 files

0.2.2

13 files

0.2.1

13 files

This release

0.2.0 This release

13 files

0.1.9

13 files

0.1.8

13 files

0.1.7

13 files

0.1.6

13 files

0.1.5

13 files

0.1.4

13 files

0.1.3

13 files

0.1.2

13 files

0.1.1

8 files

0.1.0

3 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