Skip to main content

YDB Dialect for SQLAlchemy

Project description

YDB Dialect for SQLAlchemy


License Functional tests Style checks

This repository contains work in progress YQL dialect for SqlAlchemy 2.0. Api may be changed in future without backward compatibility.

Installation

To work with current ydb-sqlalchemy version clone this repo and run from source root:

$ pip install -U .

Getting started

Connect to local YDB using SqlAlchemy:

import sqlalchemy as sa


engine = sa.create_engine("yql+ydb://localhost:2136/local")

with engine.connect() as conn:
  rs = conn.execute(sa.text("SELECT 1 AS value"))
  print(rs.fetchone())

Development

Run Tests:

Run the command from the root directory of the repository to start YDB in a local docker container.

$ docker-compose up

To run all tests execute the command from the root directory of the repository:

$ tox -e test-all

Run specific test:

$ tox -e test -- test_dbapi/test_dbapi.py

Check code style:

$ tox -e style

Reformat code:

$ tox -e isort
$ tox -e black-format

Run example (needs running local YDB):

$ python -m pip install virtualenv
$ virtualenv venv
$ source venv/bin/activate
$ pip install -r requirements.txt
$ python examples/example.py

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

ydb_sqlalchemy-0.0.1b25.tar.gz (37.8 kB view details)

Uploaded Source

Built Distribution

ydb_sqlalchemy-0.0.1b25-py2.py3-none-any.whl (42.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file ydb_sqlalchemy-0.0.1b25.tar.gz.

File metadata

  • Download URL: ydb_sqlalchemy-0.0.1b25.tar.gz
  • Upload date:
  • Size: 37.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.8

File hashes

Hashes for ydb_sqlalchemy-0.0.1b25.tar.gz
Algorithm Hash digest
SHA256 3fa7c99b0db014d570ce65ce8ebf4074e4b65cb80da8608074f73bdb862429fc
MD5 ab8a194858935e8598939a510f46360c
BLAKE2b-256 9cbe1297eb8a5f228557386c1e46387324777f6b813cff01e3771a33fd15b7d8

See more details on using hashes here.

File details

Details for the file ydb_sqlalchemy-0.0.1b25-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for ydb_sqlalchemy-0.0.1b25-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 31cfda0b71c63f4a36dc7189ca5808f5d7f4a484a881b4e515308c10cdddddd3
MD5 793fc1832da2cd1d252b9ea422c7e451
BLAKE2b-256 8ae785f2b6a07f3503a759aed19cf62d2635d3d5c0c5677d912da1e78366533c

See more details on using hashes here.

Supported by

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