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.6.tar.gz (93.0 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.6-cp313-cp313-win_amd64.whl (206.4 kB view details)

Uploaded CPython 3.13Windows x86-64

sqlce-0.2.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (257.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

sqlce-0.2.6-cp312-cp312-win_amd64.whl (206.4 kB view details)

Uploaded CPython 3.12Windows x86-64

sqlce-0.2.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (257.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

sqlce-0.2.6-cp311-cp311-win_amd64.whl (204.7 kB view details)

Uploaded CPython 3.11Windows x86-64

sqlce-0.2.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (258.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

sqlce-0.2.6-cp310-cp310-win_amd64.whl (202.4 kB view details)

Uploaded CPython 3.10Windows x86-64

sqlce-0.2.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (257.3 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

sqlce-0.2.6-cp39-cp39-win_amd64.whl (203.0 kB view details)

Uploaded CPython 3.9Windows x86-64

sqlce-0.2.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (257.5 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

sqlce-0.2.6-cp38-cp38-win_amd64.whl (203.0 kB view details)

Uploaded CPython 3.8Windows x86-64

sqlce-0.2.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (256.9 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

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

File metadata

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

File hashes

Hashes for sqlce-0.2.6.tar.gz
Algorithm Hash digest
SHA256 84f7684357d5edbb2fb6780514e82f03c5fbc57a62d4edf0b3112dedc1429804
MD5 5975848f4011c376f350d6bb6ddf52b8
BLAKE2b-256 190e259c2413c4d8b96b2daab2a0857688066ff859b5319085c28ba8e06aa272

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for sqlce-0.2.6-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e725789457f9e395ca00d6adc3cf8b6081d64fa6509ebc0140646d2cc48effd4
MD5 d397f01f6337a4020193b4def43bb7be
BLAKE2b-256 0f2c418c093f8963f15266ab7e67d4a74d4f19e67938fc30821a5104e5ed1400

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 02060fc753f55e61ce3e38a213482c0820207c8f34d21ef88e0db372de2b3529
MD5 aea10db15aa3fa5637858d6877b54d7f
BLAKE2b-256 66ba38ce7c8020bc13af6e7050edf349a7d5e5c0fcb4f50a8ca3658dd3045867

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for sqlce-0.2.6-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a2adb3cc6fefb3b9c3cfb60f6c02bd7d7d6ceacb4c22a98a6054a0c2c5cb4c55
MD5 8e7e4cb2fb45684dd36e9ef470083517
BLAKE2b-256 7e4e9e2f916cfe3229f2c5aaa5402d0dc447df234ead33d98c0805a50bffd2f6

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b5557e82eafc77007e6e77c6c99c4699ac0bbef37e0b5de48eb9a9341c967e2c
MD5 01f882cc14a0768d683da8cf417a9c77
BLAKE2b-256 136dac0a552d35fe5d09775fe40e6e95ddc4fef9aecb5ce70348f03944d3ac9d

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for sqlce-0.2.6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 40623eee2a3698c009a0d0f73c5330ca68a6721ba7ac36c5c3adc53fafb65a44
MD5 97f072340ce71fbf9b363dc992af85f2
BLAKE2b-256 c53cc18c7c4602f992a484bc1be323b5b350cccabd48ba65664c6497bb3dcbe5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5df9926269f621a7769ceaff09cc46e3a82cabc882ff4f8a3e167eaf8b659ec4
MD5 a98c5ce053fafb27be2ee8082b2b555d
BLAKE2b-256 2c3cc37045d6c113782779c4803145c27ab76979e19c1d4abca579a637cef8b6

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for sqlce-0.2.6-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 b4526e34499e60ff80a79e311e54738b5dcf1b46525c827dab339f2e78fd6d46
MD5 2488ae4fc76cf283aa9a14dbaefbfc57
BLAKE2b-256 995cd477da5115514f35db49786c3eba6c778615116bdf8d5c1b80fc655711c5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1f9278778907f866e8f73db3dc9794bcf5122ec768238ff7c66e3759caa5676f
MD5 e80d5bc4cada08bb1eef2a99bd365c17
BLAKE2b-256 1745b226b33cf6bd9c5a93a061860b7a8aba3678a5483c68ee12b227da5c2ba0

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for sqlce-0.2.6-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 08317bcbc787a8a7e0732c4fbceecfffb160968c6a5c756e7b7f1839c16d4a8d
MD5 c209df34dd2a61b920051bc9a600a6b2
BLAKE2b-256 381111ab4a4b73f768a17beb831b780607202a157e7634d837c8ba03fe57a763

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5ceb11f1e277ac297324eb8eba7f2b19b3b230de2acb4a540e71879e16f66b4a
MD5 9e1dc86f8458352d23bb0d11fa4053e5
BLAKE2b-256 2aa45138a03949aaa32e2d4ac8320c1bd2e24c6611fcf01e7f7a6712baeafdee

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for sqlce-0.2.6-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 20e051250e25105ad26093fee5a76c5354621a9f14ab68e45159be5781ce0e94
MD5 79b029cf8784a80a361f25d4dae19a2d
BLAKE2b-256 f9941f3559fef46ce6186b57eb9f13521f101fff2208c356ebdf218c848d9d3c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3539c367f27b047236199910c29d6341751569ec634c9687039064494dcea9b1
MD5 77c2cffcf1b7c6505fd472efb9909617
BLAKE2b-256 8cd1cdc8261266d5652daa2047b8abd2bc06dfb2a51b887e9130ca0dfbc6c19a

See more details on using hashes here.

Provenance

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

This release

0.2.6 This release

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