Skip to main content

Databend Driver Python Binding

Project description



cd bindings/python
maturin develop


import asyncio
from databend_driver import AsyncDatabendClient

async def main():
    client = AsyncDatabendClient('databend+http://root:root@localhost:8000/?sslmode=disable')
    conn = await client.get_conn()
    await conn.exec(
        CREATE TABLE test (
            i64 Int64,
            u64 UInt64,
            f64 Float64,
            s   String,
            s2  String,
            d   Date,
            t   DateTime
    rows = await conn.query_iter("SELECT * FROM test")
    async for row in rows:



class AsyncDatabendClient:
    def __init__(self, dsn: str): ...
    async def get_conn(self) -> AsyncDatabendConnection: ...


class AsyncDatabendConnection:
    async def info(self) -> ConnectionInfo: ...
    async def version(self) -> str: ...
    async def exec(self, sql: str) -> int: ...
    async def query_row(self, sql: str) -> Row: ...
    async def query_iter(self, sql: str) -> RowIterator: ...
    async def stream_load(self, sql: str, data: list[list[str]]) -> ServerStats: ...


class Row:
    def values(self) -> tuple: ...


class RowIterator:
    def __aiter__(self) -> RowIterator: ...
    async def __anext__(self) -> Row: ...
    def schema(self) -> Schema: ...


class Field:
    def name(self) -> str: ...
    def data_type(self) -> str: ...


class Schema:
    def fields(self) -> list[Field]: ...


class ServerStats:
    def total_rows(self) -> int: ...
    def total_bytes(self) -> int: ...
    def read_rows(self) -> int: ...
    def read_bytes(self) -> int: ...
    def write_rows(self) -> int: ...
    def write_bytes(self) -> int: ...
    def running_time_ms(self) -> float: ...


class ConnectionInfo:
    def handler(self) -> str: ...
    def host(self) -> str: ...
    def port(self) -> int: ...
    def user(self) -> str: ...
    def database(self) -> str | None: ...
    def warehouse(self) -> str | None: ...


pipenv install --dev
maturin develop
pipenv run behave tests

Project details

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

databend_driver-0.11.0-cp37-abi3-win_amd64.whl (4.4 MB view hashes)

Uploaded CPython 3.7+ Windows x86-64

databend_driver-0.11.0-cp37-abi3-manylinux_2_28_x86_64.whl (4.5 MB view hashes)

Uploaded CPython 3.7+ manylinux: glibc 2.28+ x86-64

databend_driver-0.11.0-cp37-abi3-manylinux_2_28_aarch64.whl (4.2 MB view hashes)

Uploaded CPython 3.7+ manylinux: glibc 2.28+ ARM64

databend_driver-0.11.0-cp37-abi3-macosx_11_0_arm64.whl (4.0 MB view hashes)

Uploaded CPython 3.7+ macOS 11.0+ ARM64

databend_driver-0.11.0-cp37-abi3-macosx_10_7_x86_64.whl (4.4 MB view hashes)

Uploaded CPython 3.7+ 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