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.1b20.tar.gz (37.1 kB view details)

Uploaded Source

Built Distribution

ydb_sqlalchemy-0.0.1b20-py2.py3-none-any.whl (41.5 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

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

File hashes

Hashes for ydb_sqlalchemy-0.0.1b20.tar.gz
Algorithm Hash digest
SHA256 0ddda32063323fd0a8e57cdab223bbda7aaf57808b108417f01349524ef73329
MD5 aec7154fd6a05a3a912f230293ac3f4a
BLAKE2b-256 eb0c98762075211f0951ea3ad8e475b9a6d2a0129fe7791f67f61e80aaa96fa3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ydb_sqlalchemy-0.0.1b20-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 119cae190df222fb152064c8e09b728a2f167a9b163195ce46c0c24d8219f97a
MD5 3757a0e55c0fc0bf6a5d5e5f9c6f9cb4
BLAKE2b-256 1be917134c43c96c767f46537161e8e31252f2ce845e87902029721990ddc3e5

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