Skip to main content

Embeddable document database — like SQLite for JSON

Project description

OverDrive InCode SDK — Python

Embeddable document database — like SQLite for JSON.

Import the package. Open a file. Query your data. No server needed.

Install

pip install overdrive-db

After installing, download the native library for your platform from GitHub Releases and place it in your project directory or on your system PATH.

Platform File
Windows x64 overdrive-windows-x64.dll → rename to overdrive.dll
Linux x64 liboverdrive-linux-x64.so → rename to liboverdrive.so
macOS ARM64 liboverdrive-macos-arm64.dylib → rename to liboverdrive.dylib

Quick Start

from overdrive import OverDrive

# Context manager for automatic cleanup
with OverDrive("myapp.odb") as db:
    db.create_table("users")

    # Insert
    user_id = db.insert("users", {
        "name": "Alice",
        "email": "alice@example.com",
        "age": 30
    })

    # SQL Query
    results = db.query("SELECT * FROM users WHERE age > 25")
    for row in results:
        print(f"  {row['name']}{row['email']}")

    # Full-text search
    matches = db.search("users", "alice")

    # Batch insert
    db.insert_many("users", [
        {"name": "Bob", "age": 25},
        {"name": "Charlie", "age": 35},
    ])

    print(f"Total users: {db.count('users')}")

API

Method Description
OverDrive(path) Open or create a database
db.close() Close the database
db.create_table(name) Create a table
db.drop_table(name) Drop a table
db.list_tables() List all tables
db.insert(table, doc) Insert a document, returns _id
db.insert_many(table, docs) Batch insert
db.get(table, id) Get by _id
db.update(table, id, updates) Update fields
db.delete(table, id) Delete by _id
db.count(table) Count documents
db.query(sql) Execute SQL query
db.search(table, text) Full-text search

Links

License

MIT / Apache-2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

overdrive_db-1.1.0.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

overdrive_db-1.1.0-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file overdrive_db-1.1.0.tar.gz.

File metadata

  • Download URL: overdrive_db-1.1.0.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for overdrive_db-1.1.0.tar.gz
Algorithm Hash digest
SHA256 3f3a8f76152bec5c5ff140ff27a6ac5c9f15d0f532e65d159b6cb1f537b75b4c
MD5 978bd768abbdb1f3691b6f23a3b31920
BLAKE2b-256 f7a0f4ed6ba9d03a762168842f801521204db7575e5670787330f8d384e91355

See more details on using hashes here.

File details

Details for the file overdrive_db-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: overdrive_db-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for overdrive_db-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 96da0d736bc38e33f8d31b069b72655ca3dd368fb788db8018660ff99266d509
MD5 ab927ff0b19dc0abaf7ebfe36873a8d1
BLAKE2b-256 53a67e23f5e6c45b46faab3dd70822c1a8fbe86969394489a00e0faea05ccad2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page