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++.

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.8.tar.gz (97.5 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.8-cp313-cp313-win_amd64.whl (210.3 kB view details)

Uploaded CPython 3.13Windows x86-64

sqlce-0.2.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (262.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

sqlce-0.2.8-cp312-cp312-win_amd64.whl (210.3 kB view details)

Uploaded CPython 3.12Windows x86-64

sqlce-0.2.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (262.9 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

sqlce-0.2.8-cp311-cp311-win_amd64.whl (208.5 kB view details)

Uploaded CPython 3.11Windows x86-64

sqlce-0.2.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (263.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

sqlce-0.2.8-cp310-cp310-win_amd64.whl (206.3 kB view details)

Uploaded CPython 3.10Windows x86-64

sqlce-0.2.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (262.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

sqlce-0.2.8-cp39-cp39-win_amd64.whl (206.7 kB view details)

Uploaded CPython 3.9Windows x86-64

sqlce-0.2.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (262.4 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

sqlce-0.2.8-cp38-cp38-win_amd64.whl (206.7 kB view details)

Uploaded CPython 3.8Windows x86-64

sqlce-0.2.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (261.8 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

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

File metadata

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

File hashes

Hashes for sqlce-0.2.8.tar.gz
Algorithm Hash digest
SHA256 5753f45f1fa9e93f4430ca242a8b72ac99e8838a4d3e97e68da2fad38352664c
MD5 f7863e2de265f517d5522ee12cc78538
BLAKE2b-256 1de0d368732dced4b26192e2ee80d786c4c941313969aa62c8e42db1a25c4b95

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.8.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.8-cp313-cp313-win_amd64.whl.

File metadata

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

File hashes

Hashes for sqlce-0.2.8-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 b3fd9940a358e904b3bf068738c28b279e6778439ef302da8862a1635b0212d6
MD5 a6b08dc32a7dd1997c4d01de69fe178c
BLAKE2b-256 098ddcd4ce1bfca83bc91190da7256755947c5354a11d6852330547c76dd91c1

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.8-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.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlce-0.2.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9ee896f75785e1f66d3ebd9a664fedf6beb67f7747830b3a6f7c62c3d1eaeb39
MD5 3f13185e33011c7d6ef913c60b06bb30
BLAKE2b-256 a102f82c6f1fa4332c3b5ec04816f0931157c78890414f6b66aa73373fc4c044

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.8-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.8-cp312-cp312-win_amd64.whl.

File metadata

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

File hashes

Hashes for sqlce-0.2.8-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 13b086de5340c5bb35e8783c885c4eec1c31d841524da085ab23ca234c5cd4f4
MD5 9ae2e8c9b1f02e8e6cce7a473b383baa
BLAKE2b-256 83ed230006338a77e7684b3f82f230cf747cd0925890724b936e73cfa7c7fb14

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.8-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.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlce-0.2.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 38fd4375fd1b979f32905d45a7265cb517aa6ff0ac9e00d5ef681ec8de96a1fa
MD5 6181f9223ea8c85e7623c1fdbc879c7e
BLAKE2b-256 bd1c7a0d5ad904306fe814f147e7150be8302d5a58e5f50c351641a2f01f3165

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.8-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.8-cp311-cp311-win_amd64.whl.

File metadata

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

File hashes

Hashes for sqlce-0.2.8-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7249ac6f46f02d044d704c98189cf4b080311d9bd829599d0c2984836084e3cb
MD5 ed7b86a28e01158bac70c4b88eccf5ea
BLAKE2b-256 bb357b89e9e95c502f41105ad72a67d787d2fce1c94c674aee06daf34686c6bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.8-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.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlce-0.2.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b7a30b7f5b3ea10ce01a7fa186653338fca7b01d607b8b310c23d63dcb5ba085
MD5 77cc11323f057d2d743cf2077f1dc814
BLAKE2b-256 536449722564794f8d3850dcfcc1a8c5c361b7aa8d4ff401beb907f05b90650b

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.8-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.8-cp310-cp310-win_amd64.whl.

File metadata

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

File hashes

Hashes for sqlce-0.2.8-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c8915bacbfca9ecf787369142cd12fad7e6521cece27b9e4f95c7c203080e34f
MD5 16566c11d25171d44fdea87dd3f5fb39
BLAKE2b-256 44ccb8adf60bb6617494c63a7d493c6f6f9467e2db6de3bb857a99b01f9102d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.8-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.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlce-0.2.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 57f73cb55fbf2ad206825e31d755890c66a28b6c18e9ff9827fe9968441791f4
MD5 ed029dbc95b8bc06d24da04b8d53439e
BLAKE2b-256 3d8aff5ffe470891af83ef40bd3fa60c28143bbb574f7b7adff7946161666f20

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.8-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.8-cp39-cp39-win_amd64.whl.

File metadata

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

File hashes

Hashes for sqlce-0.2.8-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 c20220ae5f5536e4df2d5a7e3a2d11cae1a7f9e2bc4237559221c929354a6806
MD5 0096c1a1b57c639960c587d074e9ad16
BLAKE2b-256 7ef05c032aba2677246830f23e52dada33a4570978c704855b334a21c0df1260

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.8-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.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlce-0.2.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c1f73adcfa734ed5a394794c1ad241ca414ba5cad45b600b75b6849f1a740d7e
MD5 f655263d1892b098e7b9ec8b1e2830fd
BLAKE2b-256 283a43844b5b44315d2f2a981470dc6f707a9258150cb28317095770c9fd14ad

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.8-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.8-cp38-cp38-win_amd64.whl.

File metadata

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

File hashes

Hashes for sqlce-0.2.8-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 fe10b46dce83b97cd97f7a3aa3668b32f5a2daacdf4e4775491710108f7a5313
MD5 22568c78b38945c977d8ff36eda8d15d
BLAKE2b-256 a41b6c06b15608d3d40d2d47bb189efeae1d248f0d8e21c4b5a412c9ee2e2528

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.8-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.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlce-0.2.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5d34e52dad2b89cc74b70702f83e9bc15a1f71382c347900d5d28a4ed06326e6
MD5 02a8169ae6cb035a6fe0d5a6a74c86df
BLAKE2b-256 9000053ff8c5753d661be6e929fe0afc5b4479ec5fc3f837a25c17c28ea1217e

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlce-0.2.8-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

This release

0.2.8 This release

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

0.2.0

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