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.9.tar.gz (97.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.2.9-cp313-cp313-win_amd64.whl (209.8 kB view details)

Uploaded CPython 3.13Windows x86-64

sqlce-0.2.9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (261.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

sqlce-0.2.9-cp312-cp312-win_amd64.whl (209.7 kB view details)

Uploaded CPython 3.12Windows x86-64

sqlce-0.2.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (261.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

sqlce-0.2.9-cp311-cp311-win_amd64.whl (207.9 kB view details)

Uploaded CPython 3.11Windows x86-64

sqlce-0.2.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (262.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

sqlce-0.2.9-cp310-cp310-win_amd64.whl (205.7 kB view details)

Uploaded CPython 3.10Windows x86-64

sqlce-0.2.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (261.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

sqlce-0.2.9-cp39-cp39-win_amd64.whl (206.2 kB view details)

Uploaded CPython 3.9Windows x86-64

sqlce-0.2.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (261.4 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

sqlce-0.2.9-cp38-cp38-win_amd64.whl (206.1 kB view details)

Uploaded CPython 3.8Windows x86-64

sqlce-0.2.9-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (260.8 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

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

File metadata

  • Download URL: sqlce-0.2.9.tar.gz
  • Upload date:
  • Size: 97.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.2.9.tar.gz
Algorithm Hash digest
SHA256 d68d88d55a249e81b41fbeb21c3280f69a7c3cb87dba19f9de975c22b2d6aa10
MD5 a8d9cf9844564c75ca3575fda291c9d4
BLAKE2b-256 42374d7c2fb97300b8b836e03e43bb69352b86c56cc128b1122f7db2ec7a8710

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.2.9-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 209.8 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.9-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 593282e353212ba139f56b4afb9487da95bdacd9702b00155db96470890baf48
MD5 8f2d9a586a2e2214f1e2fac5186228fe
BLAKE2b-256 19437f6deb023a515c58988027999af9ea232c815dbaaa0121ac1b5f49044418

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.9-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 77e7059571cb173cc99fa94dba60e9f4d92209cd94b3087d4864ab73977deb4f
MD5 9972f2b51a13603859a37d348c533daa
BLAKE2b-256 c696e5bd805870bc73ba32e0ae4b6a08c4db704fc6ba9fccdb13b59edd7aa8af

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.2.9-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 209.7 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.9-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 ac14ab69b8abf7be2666e2a8735fb2bf2bec157abadd3715b6ec24350c8bd3ff
MD5 c86c3874ed663744f23da5b82577d107
BLAKE2b-256 0b43a96c694145fded9509146edf4099c72235e8e3d93c74b876c78df540c637

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 988990f2b647619e5f8f914e6efab77afac3e41bf0db49d37fdcbbe118cc643e
MD5 cc8ec8b8d0516746e52c539f24763376
BLAKE2b-256 6cd0fc0f9d4630b14cd6a59de4c82e7e4ab8128718be76ac89d6e26c0a2c9109

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.2.9-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 207.9 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.9-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e70add2f66e1f69dc590d00a21a9ba3bfd72d71b229ae171c318fc4c13fa6250
MD5 42c285d3cd1759df05161b431bf40954
BLAKE2b-256 311d83ea66e587357f042e0d09de1219163e48397a18e229b046c29505c3a49e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 957d312a252eecd642bad1523efc3d4e3cef11cab9ad589e97aa4ce9b26ad0de
MD5 e5bdc151eaa01ac46821f8e4ff0f4a00
BLAKE2b-256 a4ee340749d0ee49c21c9f6a1d054559cf960652087efba71d717a9e53a362f4

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.2.9-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 205.7 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.9-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 6f2d2d03233d10baf65b290221d9be0b5db444e050b01880d972b6b9e55be6aa
MD5 b32bb3e98992d0c2284895353e09639a
BLAKE2b-256 b3bf3dfbf85f0c3319217106b87464cf8e53a523adaf32ff37b9903de1ea5e6a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e257e6df1e1d652542b8feeb79d820d7521a0d1ab848e86e9c066a2a3e48916b
MD5 824ea9e0406d222d66cba8090e607d89
BLAKE2b-256 51627535b344b66c206ac49a646c0ea0004709be0cd4ccde2a29284d9241095f

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.2.9-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 206.2 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.9-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 6c0d4697eb111798cc397e0bf5f0c3be3dad48d557b4d2794c23014f390bb287
MD5 391aaa5277b1d6331d300a626f4c911e
BLAKE2b-256 7dc61c4b2ad71d06c5e37365eabbf32285c07c06e97ee91edaa62600aea0f7c5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 59afdc8e15d23db708c8528ffc34ec3bf87e0bca1baf2b2070553b98098b7562
MD5 b4c3888cb7e8ab9a6518279fbc9329a4
BLAKE2b-256 49d4b770c5aee99147af31ab20020b65a166aa07a85a233c7056c65501c14a30

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.2.9-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 206.1 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.9-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 0f16d4a8da787bf412e1dd2967312de070e36c0c1f94d29c3a4f24997567d544
MD5 102aefa5f12cba8a2a251a8fc1bc6e80
BLAKE2b-256 3ee98d1e2fe0d65a5547d137fe243ad747e95a2bf0710926ddac8b8fb4061bde

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.9-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f31fa1a8f7e8ee0dab8fdf1c070b2c0914b1bef3ef3d7200d61d80f629513e81
MD5 c4d453db692f3054ce5c8fbd64d6fa66
BLAKE2b-256 6bf507a952bffcb39296869c7dcbee97df7b08ff92fc6c0463ec4112a3ee9938

See more details on using hashes here.

Provenance

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

This release

0.2.9 This release

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