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.7.tar.gz (96.1 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.7-cp313-cp313-win_amd64.whl (206.9 kB view details)

Uploaded CPython 3.13Windows x86-64

sqlce-0.2.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (257.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

sqlce-0.2.7-cp312-cp312-win_amd64.whl (206.8 kB view details)

Uploaded CPython 3.12Windows x86-64

sqlce-0.2.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (257.9 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

sqlce-0.2.7-cp311-cp311-win_amd64.whl (205.2 kB view details)

Uploaded CPython 3.11Windows x86-64

sqlce-0.2.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (259.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

sqlce-0.2.7-cp310-cp310-win_amd64.whl (202.8 kB view details)

Uploaded CPython 3.10Windows x86-64

sqlce-0.2.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (258.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

sqlce-0.2.7-cp39-cp39-win_amd64.whl (203.4 kB view details)

Uploaded CPython 3.9Windows x86-64

sqlce-0.2.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (258.1 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

sqlce-0.2.7-cp38-cp38-win_amd64.whl (203.4 kB view details)

Uploaded CPython 3.8Windows x86-64

sqlce-0.2.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (257.5 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

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

File metadata

  • Download URL: sqlce-0.2.7.tar.gz
  • Upload date:
  • Size: 96.1 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.7.tar.gz
Algorithm Hash digest
SHA256 17b167a813c6c3c4a2b3be52a3249de2e23441a13541a261fd9bb172b15cd72d
MD5 890cd342cdea29dad4b8fd0695ab391e
BLAKE2b-256 05b7a0bc703c66d27aa88e3927c3d5f2d0676ed0f6f81600ae2d1c13c05a1847

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.2.7-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 206.9 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.7-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 56e6fb63c0ce9df143b19c3a795df40d5ba3b70ebaf9f35a088c50cceeb45c6d
MD5 a670cd3202ff61c3d80abccd28c845d9
BLAKE2b-256 d8a81c724818a0e7e1d70bd89f5d576b07dc4dd897fddac20d9c0fbc50169d4e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 92caa32eb8e2c42dda076b2e109cacce2af5ff882f6e527737568abc22c6f850
MD5 dfa201f04a515cfe5697666337e5f18b
BLAKE2b-256 f54bd920eac5110b0358d4e3c7caee13e67b8504da90f932540d8d0c897032ec

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.2.7-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 206.8 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.7-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b2912c66cd14f98c486c31636a43b95b5a01d0c6b936aad7d28b69dd555234aa
MD5 a7b74a37878bceed3ea3692b667c1c2f
BLAKE2b-256 06a798e7ab15d22fce2810eae53590234967b46b6b8e6478cd1b432fb44bfe1f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6ea2bbd8f1cf128049c5de81e6b599c179ba57afc21a5d763afff287ff9f71b5
MD5 2e07d850c3992a81bd92feb9fd05732e
BLAKE2b-256 feace2aa2a6fd692bd1fc54d7aec197481d51db98ac4b1ff0ac640fd3c05b167

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.2.7-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 205.2 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.7-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 4ca4b9d7f162d15098a25cd44b997414ce5c84a49089524bd9a76f4bb688fca5
MD5 9417e6ae06e203149620ab73511bd17a
BLAKE2b-256 2490972c8a6d3d025ec96e44ad1e065dc07a2bdaf0d3f6299c36fe74c26e6875

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0e51dd8175ef961baad256db3d9d6015eafab38768fe2c50a7ce5b345b3defb5
MD5 2f38d5475028df6cb6ba49cf96a6b81e
BLAKE2b-256 97e8a9a57fb70ef5f06c336ea4271fe9d7fbf225d4bb399342cddd978eeed81a

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.2.7-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 202.8 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.7-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c9d877d51fc437a04407b07317b4edfc0781c55244c6006598466abadb99e76c
MD5 4ac88cdc38f095a97908f3f2d994421d
BLAKE2b-256 4bb1ec75c45f251d770c9d522d438b333f62179af80d48da897bd4697219b9e4

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d04a1f7c9f5d6097bde4db0b5e511cc0b519e0a2e329ed6f0595b74253d98cb7
MD5 7bc8a1285f76649abcd049c62cb6d840
BLAKE2b-256 578d7983384cdea8b1360ba5fa0bf68f172ad25e73c70e1c7639142eac0986cb

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.2.7-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 203.4 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.7-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 7cefaaef249c73bbd79ca3dbc09df17452b97fd7b9ab6aa3ded57651380e10c1
MD5 68ab9644eab636201d669e3a32516422
BLAKE2b-256 48606f0a55605fad1c1b0f0da3a433cdf096db1047a0feea607e3cddf91833f6

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 858de74724184b06df61b535a86b0b7996c68eefed7b213376649fa13c2e5b45
MD5 22c36376be6a0f7e2e3247db88735044
BLAKE2b-256 27509ea41892470949f201f64f5243d0dfc8d8adc080d8423689166a8fa38835

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: sqlce-0.2.7-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 203.4 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.7-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 38eecf31bfb2568e898eb31980dc7d50e0f5959c94ae08c104c4be1a89b2abd3
MD5 5a54a97068d137e1ed9b7c9f8ea53b54
BLAKE2b-256 cb46b72ab036a55638cf5040191ffa40f98ab12f54563c674daf9eac1902161d

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for sqlce-0.2.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 52b3d7cb95f8eaa777d0a4127af62ee4e4bdecde1e6620e45b4c40425140a0c9
MD5 ec7c9c69e1ed18ac717f0c9869603202
BLAKE2b-256 aee3b2880a96429a1f2c52041b6419099d8a40e10d599b608b079c4b3d2912f4

See more details on using hashes here.

Provenance

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

This release

0.2.7 This release

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