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.1.8.tar.gz (73.3 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.1.8-cp313-cp313-win_amd64.whl (186.7 kB view details)

Uploaded CPython 3.13Windows x86-64

sqlce-0.1.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (236.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

sqlce-0.1.8-cp312-cp312-win_amd64.whl (186.6 kB view details)

Uploaded CPython 3.12Windows x86-64

sqlce-0.1.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (236.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

sqlce-0.1.8-cp311-cp311-win_amd64.whl (184.7 kB view details)

Uploaded CPython 3.11Windows x86-64

sqlce-0.1.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (238.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

sqlce-0.1.8-cp310-cp310-win_amd64.whl (182.2 kB view details)

Uploaded CPython 3.10Windows x86-64

sqlce-0.1.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (236.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

sqlce-0.1.8-cp39-cp39-win_amd64.whl (182.8 kB view details)

Uploaded CPython 3.9Windows x86-64

sqlce-0.1.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (237.1 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

sqlce-0.1.8-cp38-cp38-win_amd64.whl (182.7 kB view details)

Uploaded CPython 3.8Windows x86-64

sqlce-0.1.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (236.5 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

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

File metadata

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

File hashes

Hashes for sqlce-0.1.8.tar.gz
Algorithm Hash digest
SHA256 0f329913945d94b40e08b9afe862f43f98eaf8858ff23febd7776f8ea4f64b5e
MD5 261a774e4b6d5f685e43fa0994096f49
BLAKE2b-256 a80dae57e81db1fbc4a7cb56a39461ce4d330bc7679e006f065a35cadb0be19d

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for sqlce-0.1.8-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 209627eead9dcceea8d31812109d67e7deefef47641b53808705931c3f6ff4e3
MD5 59f6201c8af258b7162f38fe79345dfe
BLAKE2b-256 c821895f86f29a0b8e5d3de0131d7f0d36f5a06de1dc9e1976c15ff0148d0f07

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.1.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fe24b59434e2863006fae87fbf9e0c16d4ea72ba2bd556ff0fb1f42c465d1768
MD5 87de3a201aa5e8ba2defb7d5cd590fe3
BLAKE2b-256 57a6dc346f8d959302cecaf318007ef82cff5f0d96685f6ed635530a4de973be

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for sqlce-0.1.8-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f6ab22e0a072b988a42cca99f22ea6c45a81f13e1b0fb7ab1f2992a6b99e135f
MD5 54a49f6eb095523be23a149130486ae0
BLAKE2b-256 b3869b37fad7cea7e18c170ed77b213965cb89ada9ee5a2b091a62f84d152bd6

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.1.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 aff58a6b044d34cf2a45cfb1d76e315e7036d3c91cb59122b8fb0fddad4d557e
MD5 df9171860c444d0df601b18fdf30c873
BLAKE2b-256 b08d9befa794d6178a96849d45f488cbda8019a95d9049ddd48531eeb346bc85

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for sqlce-0.1.8-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 461dcbb78ac88f20be8136728c536d66b516cd0cabb67cca70509009767525b7
MD5 b7560a269e541ded68149c3b13c16e0d
BLAKE2b-256 d9f03fc4734e83a691787bff666f1fe6397c5c38de9831e601ed67e5b5414a7f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.1.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 234b09de57097dd1ca5c4bd8c9daf0b7dfdd8d88227f933a1b7f436ac594d235
MD5 45cd6db9c9957eb9e8f93051f5d152c4
BLAKE2b-256 d99ad312acb8977b86143af45f8bcba3445267b54b47d548f4b7128f026a9cad

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for sqlce-0.1.8-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 000f505ec8d3b03588e44aed5ffd99df74fa78f486b0da7bc8de7fdb59887af6
MD5 a54c629cadf96a214eb7598062c10e15
BLAKE2b-256 8c9d0868ce97166a7f111facbca39cb8f24c491a6cb621461b5db8f109faff8c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.1.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b50300b17ecab51c427b99f64feb587529fe4bf4942fd92c1b8c04ce84000bb9
MD5 f1fd0d09b8434cd4bec22024d8f290d9
BLAKE2b-256 681136fa2bceb0e4212915160bde73594381236bc20332d57ef9ebd727d18b01

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for sqlce-0.1.8-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 ba594f13f859060ffe8a356a58406776a490cd643f34be7b1f90726bcb0dd154
MD5 f70457f48bce069e4ed2c2c366f20143
BLAKE2b-256 13c21c5fececbb5a15a706e5a56cb2cfbe0ba7842cb3ac9837d47b5ad1ba0438

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.1.8-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 96489ea64df18d143d17d51fb303ae581fdf92c52fe71d3e428b8d061db90fdf
MD5 52f669415e6a580f71f64c1df9866362
BLAKE2b-256 8b546820e79fdf8c10ac034baf0c514ddf6b0afbf924782d006239f3b597aef9

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for sqlce-0.1.8-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 823732d42f81aefec4e166419e31bb9f6124ea3a02f1989fd14cc1f59e6668ef
MD5 7f7fe3912a416786b5d9e447a5740a06
BLAKE2b-256 654050c1e7fad2f6d323120733f58e3a8ddb45586ee40277a5479ee22c7512f9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.1.8-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ee6cb245ff2b5e9045d550a05c2605339c4f78c09e977518678aa8086b8690cd
MD5 45fdbefbbd4dcd475183e93575e7e265
BLAKE2b-256 99e4eaac6638a58e00674418d427b2bcf528d0ec031d4ad106ab70a73c61787a

See more details on using hashes here.

Provenance

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

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

0.2.0

13 files

0.1.9

13 files

This release

0.1.8 This release

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