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.3.0.tar.gz (98.4 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.3.0-cp313-cp313-win_amd64.whl (207.6 kB view details)

Uploaded CPython 3.13Windows x86-64

sqlce-0.3.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (267.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

sqlce-0.3.0-cp312-cp312-win_amd64.whl (207.6 kB view details)

Uploaded CPython 3.12Windows x86-64

sqlce-0.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (267.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

sqlce-0.3.0-cp311-cp311-win_amd64.whl (205.4 kB view details)

Uploaded CPython 3.11Windows x86-64

sqlce-0.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (267.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

sqlce-0.3.0-cp310-cp310-win_amd64.whl (203.2 kB view details)

Uploaded CPython 3.10Windows x86-64

sqlce-0.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (266.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

sqlce-0.3.0-cp39-cp39-win_amd64.whl (203.5 kB view details)

Uploaded CPython 3.9Windows x86-64

sqlce-0.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (266.7 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

sqlce-0.3.0-cp38-cp38-win_amd64.whl (206.0 kB view details)

Uploaded CPython 3.8Windows x86-64

sqlce-0.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (261.5 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

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

File metadata

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

File hashes

Hashes for sqlce-0.3.0.tar.gz
Algorithm Hash digest
SHA256 c551666ed740803e915ce00bfa4a18300b53652d511342172e208fda2e2ff038
MD5 baf7aa28b744870f95d43bcba5ee9375
BLAKE2b-256 813e1276d94353aa65d447d1be017ebe7e9f939fee2223dea7c3e3c88e64d035

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.3.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 207.6 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.3.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 18e362922e4262bec8b2dc286b86a6a214b17f8c631b3456ff4bc044d86fd029
MD5 b5aefde56af71dc64588ce7b29cd29ed
BLAKE2b-256 8d33fd0befabca392286951f4e1a79f7884f56d6d18138edbb2ac7a2f87053c0

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.3.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 50721caf12671730f5538e7179f43ea6e478596a0d03654109ff3ca573222214
MD5 85ab6fb4f64a60277623255a582e31d1
BLAKE2b-256 985de63943f37a840db92054f0209eea35242604a45e8bc435fe6ad73b74419f

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.3.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 207.6 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.3.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 1702d8dd621787de1d087042e2703b58f763e0bf539b730559bce051467b5de5
MD5 c93db0749c3fc3481f550ef63daa3413
BLAKE2b-256 4cbf2509da966aebc28f1d448be36cc068d8ce5c306051c06306bccf6374ac77

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f02d163113e69c29ce30c841f79c37c39cbf6b569487637227cd71e454150d7e
MD5 c235e8002cbe2a1088dd775a65c91e74
BLAKE2b-256 fc67240a00861da9785736e1e8914f224d3bf6bfb6e7effad23601354b3cb3e0

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.3.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 205.4 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.3.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 95f657a916d1d7bf3e4ace63626fc2533ed7e57540481a40c9523a32cf09209c
MD5 21b096aa554e6d2a6ed03de0d133d234
BLAKE2b-256 b60048d3c45b44b362803c038d538443ecd5e6b3966d169384a9150a00df89d0

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 31fd2387aca1db3ef07acc28b2d9752fd9527b053ccc65dbd239af44d0015ce7
MD5 6cb048c92dd9cceb35cdebab273ffe11
BLAKE2b-256 10eff4f8b8d6275be26a537bb5832b4ebf1a6c346bd2e28a46fe85acdd3b846c

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.3.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 203.2 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.3.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 b16215d0cb9a47cafc1d06fa6caf591540591462009617652f1c0a762977e744
MD5 7797bcc17b63d262147dc41fd1ca4c9d
BLAKE2b-256 784b5c745bef8461a36e31d897272f24ca374f26990295fedbedf542b53a9595

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c3321e08d4511e42323ccf7e487ba5f4e275bd3c7e60f8b41f8d51522c25279a
MD5 510540d65baef6521f199b659fbe6e7d
BLAKE2b-256 00797ed4da6a5bdf45ad0c03aa4c8e02af0838c99748fdcaeacb05eb1dd8e75d

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.3.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 203.5 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.3.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 e6fea368e5e2b8977ddd4158ce73bebecc3d58d2a277c655f5fa5f4ae0ba2aaf
MD5 fc9a7c0be57dc503fda6627949a59a3f
BLAKE2b-256 deefe49da9f7da76bf3788378652c8f7f9b252ae16c249f203510ccfd1f2444d

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d332f4856501bf029ff6d0cbf37dab8271e33af0aea2ad80589c6c6c54d9bce8
MD5 c1e2e74867e1e1d3e497f79a82d2d582
BLAKE2b-256 bbf556ccbe0e02070940c080b3741d29743fecbd7dc0ef41adae57d72f522406

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.3.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 206.0 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.3.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 6b1296202c69f05e5a1c183910897ecfe4619d1e8600cacb2dd00f4af8543654
MD5 da0d701c639d992398ab0e9326b0d852
BLAKE2b-256 a0a8d4adb8bd1316d3f912f748826f3f032848ee0928c8fa190a6fead172e68c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 33ea37d646f239c8b2413b8ece80ecacc7360778bc5be0f2d6363f01d8685be8
MD5 e2359d010753722b3f9d7988ecbae82a
BLAKE2b-256 89cbe5216b1edad7a0fbe58476546145d76c2ea3e63c75149dd611f775ed2b60

See more details on using hashes here.

Provenance

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

This release

0.3.0 This release

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

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