Skip to main content

Database Interaction Services for GeneWeaver

Project description

Geneweaver DB

Tests Style Coverage

The Geneweaver DB library provides database access functionality for the Geneweaver project. The library contains SQL queries wrapped in standard python functions, as well as a database connection manager.

Installation

To install the Geneweaver DB library, run one of the following commands:

Using Pip

pip install geneweaver-db

Using Poetry

poetry add geneweaver-db

Usage

The Geneweaver DB library is intended to be used as a dependency for other Geneweaver packages, but can also be used as a stand-alone pacakge.

The package has three main sections:

  • geneweaver.db - contains non-async database functions.
  • geneweaver.db.aio - contains async database functions.
  • geneweaver.db.query - contains SQL queries and SQL generation functions.

Database functions usually take a Cursor or AsyncCursor object as their first argument.

Non-Async Functions

import psycopg
import geneweaver
from geneweaver.db.core.settings import settings

def get_my_gene():
    with psycopg.connect(settings.URI) as conn:
            with conn.cursor() as cur:
                result = geneweaver.db.gene.get(cur, 'my_gene')
    return result

Async Functions

import psycopg
import geneweaver
from geneweaver.db.core.settings import settings

async def get_my_gene():
    async with psycopg.AsyncConnection.connect(settings.URI) as conn:
            async with conn.cursor() as cur:
                result = await geneweaver.db.aio.gene.get(cur, 'my_gene')
    return result

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

geneweaver_db-0.5.0a4.tar.gz (28.7 kB view details)

Uploaded Source

Built Distribution

geneweaver_db-0.5.0a4-py3-none-any.whl (43.0 kB view details)

Uploaded Python 3

File details

Details for the file geneweaver_db-0.5.0a4.tar.gz.

File metadata

  • Download URL: geneweaver_db-0.5.0a4.tar.gz
  • Upload date:
  • Size: 28.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.9.19 Linux/6.5.0-1021-azure

File hashes

Hashes for geneweaver_db-0.5.0a4.tar.gz
Algorithm Hash digest
SHA256 887899aad63f8cf935cd777b750274b54665ab0f0116c684a47a226efeb2f59e
MD5 8e80867a4818a104da26ced2d176d0a1
BLAKE2b-256 53bbbf44fac260f4ce68b052b28105d5b89e3c34664a5c8f44cb07ebbf3c129f

See more details on using hashes here.

File details

Details for the file geneweaver_db-0.5.0a4-py3-none-any.whl.

File metadata

  • Download URL: geneweaver_db-0.5.0a4-py3-none-any.whl
  • Upload date:
  • Size: 43.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.9.19 Linux/6.5.0-1021-azure

File hashes

Hashes for geneweaver_db-0.5.0a4-py3-none-any.whl
Algorithm Hash digest
SHA256 e6e3b87da07ae07e17b996d60bb3334e0cee78be3eedf6d13bf50c47c2f639f8
MD5 5685f742eb2b7bb130a4e9e061f62821
BLAKE2b-256 4d24b670c16336782c8783170a8c5978dbc4679fe2f86da76bca9e6e34d93487

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 Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page