Skip to main content

sqlce

C++ Python Platform License Reverse engineered

Ru README

Reverse engineering of the .sdf (SQL Server Compact Edition 4.0) 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.

  • 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 SdfDatabase

db = SdfDatabase("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++.

Try it in the browser (WebAssembly, runs locally - the file never leaves your tab): https://boykopovar.github.io/sqlce/

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.4.tar.gz (62.9 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.4-cp313-cp313-win_amd64.whl (160.4 kB view details)

Uploaded CPython 3.13Windows x86-64

sqlce-0.1.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (198.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

sqlce-0.1.4-cp312-cp312-win_amd64.whl (160.3 kB view details)

Uploaded CPython 3.12Windows x86-64

sqlce-0.1.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (198.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

sqlce-0.1.4-cp311-cp311-win_amd64.whl (158.9 kB view details)

Uploaded CPython 3.11Windows x86-64

sqlce-0.1.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (200.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

sqlce-0.1.4-cp310-cp310-win_amd64.whl (157.2 kB view details)

Uploaded CPython 3.10Windows x86-64

sqlce-0.1.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (199.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

sqlce-0.1.4-cp39-cp39-win_amd64.whl (157.5 kB view details)

Uploaded CPython 3.9Windows x86-64

sqlce-0.1.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (199.3 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

sqlce-0.1.4-cp38-cp38-win_amd64.whl (157.3 kB view details)

Uploaded CPython 3.8Windows x86-64

sqlce-0.1.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (198.6 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

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

File metadata

  • Download URL: sqlce-0.1.4.tar.gz
  • Upload date:
  • Size: 62.9 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.4.tar.gz
Algorithm Hash digest
SHA256 e18899db3b5ef41c3c4959de197d57159decbd1b10e77481e7a1c4935041650c
MD5 08d3ac889688a938e1d0e4d37f5632b3
BLAKE2b-256 c66926e4e5425ed630810bca65c8d1ee0fe927b28c0a33ff8355c42e9ed16db6

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.1.4-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 160.4 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.4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 db2d61efa9e144c57fd1e5a6e500ee30e5b77ea592c9cd733ac2d7fb1536b479
MD5 f1b0c45e26198ae703adb3f54c9b7dcf
BLAKE2b-256 6710fafd3fed347649373e4cb740f547491367403a1b0e93770d4780846c5add

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.1.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d6ab36839327dfc31d53b92d2789a276cd784b5ec16a7ea5538a667a2153f033
MD5 96f8bf262e4b3d210297ea3ef170d116
BLAKE2b-256 b2594caca85572b3a019d0611fbc544add9345fb809fb73f82e44755f8db96f9

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.1.4-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 160.3 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.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f4499dc7ca1a967bec1f77b17caced1395f19791f832ac0e68107db7020d0d26
MD5 a024843c7f6fc9b1c636c4a8eb7513c4
BLAKE2b-256 b495365ddcb5e54aa660954b5c312dbd7f518ecd8b7eece433c5db5180a89c66

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.1.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 09876360d33e0b88f8af52a79a294799f2a5e316caceb7efd4bbf2c2e17e67af
MD5 cbb7e83d732eb3510de98bf8cffea911
BLAKE2b-256 8aac8c0b3f38f972bab743e4973cfdaa67cac5c9ee9e1cfa97788ef3534a1cc3

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.1.4-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 158.9 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.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 50704a37fce7f7d4aff555be852d1bf1f591c5d2cdfe0b82e34c8e340c3ef6ea
MD5 1cda1b55806bc668d12c42fbc9d1002b
BLAKE2b-256 0c313f020d7c846cf69757744283846c1c37b20486f1c4c18dfe9ac0b5f6dfb7

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.1.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 476d90d06df39cc5f514e5d6d68b9fb5f2478b94ac95582b7dd41789132eb505
MD5 74bddf21c9d4da5694594da2c9c618d5
BLAKE2b-256 3c0aa4d63b669e2a9ffe41cf0713c91f4e0aa01079e50889846f857ca81ba376

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.1.4-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 157.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.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 3a52a3b9369706e1ff63c7641b642934bf83ac3d5dec746cd2fc28e2e37ed86f
MD5 4ad35fd29d12839f0a3e0b20da14fd28
BLAKE2b-256 5863c034384339a0475e82d415dc000e89b44f2912093c63c98d27cc72bcfcb0

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.1.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 250e65321612af76516d46f2291d51380c833499642c0aff76d8bc4af8a24e2d
MD5 5be8c0098d6bd528a973529354da58f8
BLAKE2b-256 983102395767a82e2986aeb2dcf4b5aadc96fdf2c721550623bcda1700035256

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.1.4-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 157.5 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.4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 e2c611cf74bc256e31a3b1568934627b9f5f855f5c4270328513c20a0a073119
MD5 8ce3a51c5af0f24ee2080a41ba41df50
BLAKE2b-256 a0a9af1ee85523ce130ff329e09a9fac70b302e15ea87071eb31157c9da2f9be

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.1.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1f257bb9a77f56a4ed47e5f11c66c2fff0ede885efb7ba4773a670efa201d47c
MD5 1cb20a5311323d4de6a0e706a6945df4
BLAKE2b-256 415ba957558e8e9161857e20174749adb43b2eee20730457f85629ecac206bd9

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.1.4-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 157.3 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.4-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 96ecca7fd786c5bbc39ddbfa68e7468bd73f5f758427519df44a8b9ac49d8472
MD5 5f0b51a8ff8370c3438128a9e12380eb
BLAKE2b-256 cc377ef5713c5040df2ca110d96b71efb173192eefa6b255a3d602720ce535d8

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.1.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e0d4a2387daa87aafa4b8c8db072db4e49e537a3131b59caaae5e7091c3e6066
MD5 17f9aa0d5389c1a08b5c8ee93ef69f11
BLAKE2b-256 cd7ab88aafdbf2850b9117228516e322c634b90ca13576d0562bb6ba8c613320

See more details on using hashes here.

Provenance

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

0.1.8

13 files

0.1.7

13 files

0.1.6

13 files

0.1.5

13 files

This release

0.1.4 This release

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