Skip to main content

No project description provided

Project description

Scylla driver for python

Simple to use driver for scyllaDB written in Rust. It uses official driver for scyllaDB for Rust internally and integrates it in Python.

from scyllapy import Scylla

async def main():
    scylla = Scylla(["172.18.0.5:9042"], username="user", password="pass", keyspace="keyspace")
    await scylla.startup()
    result = await scylla.execute("SELECT * FROM table")

You can use parameters in queries.

    await scylla.execute("SELECT * FROM table WHERE id IN ? AND name = ?", ([1, 2, 3], "name"))

You can set row type, by passing as_class.

import asyncio
from dataclasses import dataclass
import uuid

from scyllapy import Scylla


@dataclass
class InboxDTO:
    user_id: uuid.UUID
    chat_id: uuid.UUID


async def main():
    scylla = Scylla(["172.18.0.5:9042"], keyspace="chat_api")
    await scylla.startup()
    results = await scylla.execute("SELECT * FROM inbox")
    print(results.all(as_class=InboxDTO))
    await scylla.shutdown()


if __name__ == "__main__":
    asyncio.run(main())

It will print:

[InboxDTO(user_id=UUID('cbec7f6f-a1d3-45be-b1c1-08187ac6b188'), chat_id=UUID('72b14d17-eab3-4c12-bd97-3e80b8ab35c3'))]

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

scyllapy-1.0.3.tar.gz (21.9 kB view hashes)

Uploaded Source

Built Distributions

scyllapy-1.0.3-cp38-abi3-win_amd64.whl (1.6 MB view hashes)

Uploaded CPython 3.8+ Windows x86-64

scyllapy-1.0.3-cp38-abi3-win32.whl (1.5 MB view hashes)

Uploaded CPython 3.8+ Windows x86

scyllapy-1.0.3-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.6 MB view hashes)

Uploaded CPython 3.8+ manylinux: glibc 2.17+ x86-64

scyllapy-1.0.3-cp38-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (2.6 MB view hashes)

Uploaded CPython 3.8+ manylinux: glibc 2.17+ i686

scyllapy-1.0.3-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (2.5 MB view hashes)

Uploaded CPython 3.8+ manylinux: glibc 2.17+ ARMv7l

scyllapy-1.0.3-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.5 MB view hashes)

Uploaded CPython 3.8+ manylinux: glibc 2.17+ ARM64

scyllapy-1.0.3-cp38-abi3-macosx_11_0_arm64.whl (1.9 MB view hashes)

Uploaded CPython 3.8+ macOS 11.0+ ARM64

scyllapy-1.0.3-cp38-abi3-macosx_10_7_x86_64.whl (2.1 MB view hashes)

Uploaded CPython 3.8+ macOS 10.7+ x86-64

Supported by

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