Skip to main content

Fast MySQL driver build in Cython (Sync and Async).

Project description

Fast MySQL driver build in Cython (Sync and Async).

Created to be used in a project, this package is published to github for ease of management and installation across different modules.

Installation

Install from PyPi

pip install sqlcycli

Install from github

pip install git+https://github.com/AresJef/SQLCyCli.git

Requirements

  • Python 3.10 or higher.
  • MySQL 5.5 or higher.

Features

  • Written in Cython for optimal performance (especially for SELECT/INSERT query).
  • All classes and methods are well documented and type annotated.
  • Supports both Sync and Async connection to the server.
  • API Compatiable with PyMySQL and aiomysql.
  • Support conversion (escape) for most of the native python types, and objects from libaray numpy and pandas. Does NOT support custom conversion (escape).

Benchmark

The following result comes from benchmark:

  • Device: MacbookPro M1Pro(2E8P) 32GB
  • Python: 3.12.4
  • PyMySQL: 1.1.1
  • aiomysql: 0.2.0
  • asyncmy: 0.2.9
# Unit: second | Lower is better
name        type    rows    insert-per-row  insert-bulk select-per-row  select-all
SQLCyCli    sync    50000   2.428453        0.367404    2.526141        0.078057
PyMySQL     sync    50000   2.821481        0.480322    4.784844        0.335978
SQLCyCli    async   50000   3.757844        0.340909    5.017284        0.157078
aiomysql    async   50000   3.845818        0.419444    5.764339        0.333526
asyncmy     async   50000   4.015180        0.484794    6.144809        0.337285
# Unit: second | Lower is better
name        type    rows    update-per-row  update-all  delete-per-row  delete-all
SQLCyCli    sync    50000   2.597837        0.327441    2.251010        0.131872
PyMySQL     sync    50000   3.044907        0.368951    2.789961        0.158141
SQLCyCli    async   50000   4.226546        0.369085    3.994125        0.139679
aiomysql    async   50000   3.792293        0.356109    3.589203        0.134762
asyncmy     async   50000   4.160017        0.362896    3.928555        0.145456

Usage

Use connect() to create a connection (Sync or Async) with the server.

import asyncio
import sqlcycli

HOST = "localhost"
PORT = 3306
USER = "root"
PSWD = "password"

# Connection (Sync & Async)
async def test_connection() -> None:
    # Sync Connection - - - - - - - - - - - - - - - - - -
    with sqlcycli.connect(HOST, PORT, USER, PSWD) as conn:
        with conn.cursor() as cur:
            cur.execute("SELECT 1")
            assert cur.fetchone() == (1,)

    # Connection closed
    assert conn.closed()

    # Async Connection - - - - - - - - - - - - - - - - -
    async with sqlcycli.connect(HOST, PORT, USER, PSWD) as conn:
        async with conn.cursor() as cur:
            await cur.execute("SELECT 1")
            assert await cur.fetchone() == (1,)

    # Connection closed
    assert conn.closed()

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

Use create_pool() to create a Pool for managing and maintaining connections (Sync or Async) with the server.

import asyncio
import sqlcycli

HOST = "localhost"
PORT = 3306
USER = "root"
PSWD = "password"

# Pool (Context: Connected)
async def test_pool_context_connected() -> None:
    async with sqlcycli.create_pool(HOST, PORT, USER, PSWD, min_size=1) as pool:
        # Pool is connected: 1 free connection (min_size=1)
        assert not pool.closed() and pool.free == 1

        # Sync Connection - - - - - - - - - - - - - - - - - -
        with pool.acquire() as conn:
            with conn.cursor() as cur:
                cur.execute("SELECT 1")
                assert cur.fetchone() == (1,)

        # Async Connection - - - - - - - - - - - - - - - - -
        async with pool.acquire() as conn:
            async with conn.cursor() as cur:
                await cur.execute("SELECT 1")
                assert await cur.fetchone() == (1,)

    # Pool closed
    assert pool.closed() and pool.total == 0

# Pool (Context: Disconnected)
async def test_pool_context_disconnected() -> None:
    with sqlcycli.create_pool(HOST, PORT, USER, PSWD, min_size=1) as pool:
        # Pool is not connected: 0 free connection (min_size=1)
        assert pool.closed() and pool.free == 0

        # Sync Connection - - - - - - - - - - - - - - - - - -
        with pool.acquire() as conn:
            with conn.cursor() as cur:
                cur.execute("SELECT 1")
                assert cur.fetchone() == (1,)

        # Async Connection - - - - - - - - - - - - - - - - -
        async with pool.acquire() as conn:
            async with conn.cursor() as cur:
                await cur.execute("SELECT 1")
                assert await cur.fetchone() == (1,)
        # 1 free async connection
        assert pool.free == 1

    # Pool closed
    assert pool.closed() and pool.total == 0

if __name__ == "__main__":
    asyncio.run(test_pool_context_connected())
    asyncio.run(test_pool_context_disconnected())

Use the Pool class to create a Pool instance. Must close manually.

import asyncio
import sqlcycli

HOST = "localhost"
PORT = 3306
USER = "root"
PSWD = "password"

# Pool (Instance: Connected)
async def test_pool_instance_connected() -> None:
    pool = await sqlcycli.create_pool(HOST, PORT, USER, PSWD, min_size=1)
    # Pool is connected: 1 free connection (min_size=1)
    assert not pool.closed() and pool.free == 1

    # Sync Connection - - - - - - - - - - - - - - - - - -
    with pool.acquire() as conn:
        with conn.cursor() as cur:
            cur.execute("SELECT 1")
            assert cur.fetchone() == (1,)

    # Async Connection - - - - - - - - - - - - - - - - -
    async with pool.acquire() as conn:
        async with conn.cursor() as cur:
            await cur.execute("SELECT 1")
            assert await cur.fetchone() == (1,)

    # Close pool manually
    await pool.close()
    assert pool.closed() and pool.total == 0


# Pool (Instance: Disconnected)
async def test_pool_instance_disconnected() -> None:
    pool = sqlcycli.Pool(HOST, PORT, USER, PSWD, min_size=1)
    # Pool is not connected: 0 free connection (min_size=1)
    assert pool.closed() and pool.free == 0

    # Sync Connection - - - - - - - - - - - - - - - - - -
    with pool.acquire() as conn:
        with conn.cursor() as cur:
            cur.execute("SELECT 1")
            assert cur.fetchone() == (1,)

    # Async Connection - - - - - - - - - - - - - - - - -
    async with pool.acquire() as conn:
        async with conn.cursor() as cur:
            await cur.execute("SELECT 1")
            assert await cur.fetchone() == (1,)
    # 1 free async connection
    assert pool.free == 1

    # Close pool manually
    await pool.close()
    assert pool.closed() and pool.total == 0

if __name__ == "__main__":
    asyncio.run(test_pool_instance_connected())
    asyncio.run(test_pool_instance_disconnected())

Use the sqlfunc module to escape values for MySQL functions.

import asyncio
import datetime
import sqlcycli
from sqlcycli import sqlfunc

HOST = "localhost"
PORT = 3306
USER = "root"
PSWD = "Password_123456"

# SQLFunction
def test_sqlfunction() -> None:
    with sqlcycli.connect(HOST, PORT, USER, PSWD) as conn:
        with conn.cursor() as cur:
            cur.execute("SELECT %s", sqlfunc.TO_DAYS(datetime.date(2007, 10, 7)))
            # SQLFunction 'TO_DAYS()' escaped as: TO_DAYS('2007-10-07')
            assert cur.executed_sql == "SELECT TO_DAYS('2007-10-07')"
            assert cur.fetchone() == (733321,)

    # Connection closed
    assert conn.closed()

if __name__ == "__main__":
    test_sqlfunction()

Acknowledgements

SQLCyCli is build on top of the following open-source repositories:

SQLCyCli is based on the following open-source repositories:

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

sqlcycli-1.5.0.tar.gz (3.6 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

sqlcycli-1.5.0-cp313-cp313-win_amd64.whl (6.0 MB view details)

Uploaded CPython 3.13Windows x86-64

sqlcycli-1.5.0-cp313-cp313-musllinux_1_2_x86_64.whl (20.4 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

sqlcycli-1.5.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (22.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

sqlcycli-1.5.0-cp313-cp313-macosx_11_0_arm64.whl (6.1 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

sqlcycli-1.5.0-cp313-cp313-macosx_10_13_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

sqlcycli-1.5.0-cp313-cp313-macosx_10_13_universal2.whl (8.7 MB view details)

Uploaded CPython 3.13macOS 10.13+ universal2 (ARM64, x86-64)

sqlcycli-1.5.0-cp312-cp312-win_amd64.whl (6.0 MB view details)

Uploaded CPython 3.12Windows x86-64

sqlcycli-1.5.0-cp312-cp312-musllinux_1_2_x86_64.whl (20.5 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

sqlcycli-1.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (22.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

sqlcycli-1.5.0-cp312-cp312-macosx_11_0_arm64.whl (6.1 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

sqlcycli-1.5.0-cp312-cp312-macosx_10_9_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.12macOS 10.9+ x86-64

sqlcycli-1.5.0-cp312-cp312-macosx_10_9_universal2.whl (8.8 MB view details)

Uploaded CPython 3.12macOS 10.9+ universal2 (ARM64, x86-64)

sqlcycli-1.5.0-cp311-cp311-win_amd64.whl (6.1 MB view details)

Uploaded CPython 3.11Windows x86-64

sqlcycli-1.5.0-cp311-cp311-musllinux_1_2_x86_64.whl (20.3 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

sqlcycli-1.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (22.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

sqlcycli-1.5.0-cp311-cp311-macosx_11_0_arm64.whl (6.1 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

sqlcycli-1.5.0-cp311-cp311-macosx_10_9_x86_64.whl (6.5 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

sqlcycli-1.5.0-cp311-cp311-macosx_10_9_universal2.whl (8.8 MB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)

sqlcycli-1.5.0-cp310-cp310-win_amd64.whl (6.1 MB view details)

Uploaded CPython 3.10Windows x86-64

sqlcycli-1.5.0-cp310-cp310-musllinux_1_2_x86_64.whl (18.4 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

sqlcycli-1.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (20.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

sqlcycli-1.5.0-cp310-cp310-macosx_11_0_arm64.whl (6.1 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

sqlcycli-1.5.0-cp310-cp310-macosx_10_9_x86_64.whl (6.4 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

sqlcycli-1.5.0-cp310-cp310-macosx_10_9_universal2.whl (8.7 MB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file sqlcycli-1.5.0.tar.gz.

File metadata

  • Download URL: sqlcycli-1.5.0.tar.gz
  • Upload date:
  • Size: 3.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for sqlcycli-1.5.0.tar.gz
Algorithm Hash digest
SHA256 b50e63226d322d0f2594728442f8ae6d2c8a6c79389aca0228d249d4ad433035
MD5 bc51668c6e5855cb4707069ae03fb282
BLAKE2b-256 361b69bd30a4306f8ff143251fe3fd3885e62979bf6c647a62bd57409f19e8d9

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: sqlcycli-1.5.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 6.0 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for sqlcycli-1.5.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e722745829684b5bcbc2a07d548bbab2e7c08453f87e4213d96db871cfa46a42
MD5 e496c733b6af67ffdb1e192e12918a32
BLAKE2b-256 1c1ac825aa610b899487f30f7f128d0b4e88775e5e1eddcf71b8aa149e28c65c

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a6cd6e9f42dec57e410660e2ddcf11471639086bce985f0203bcc806ef3048b5
MD5 23f2b133106cf8011cfa10d363600640
BLAKE2b-256 5742d83f667bbd6bf202b2823f898cd3125623395f15520d40a2d355fc3c51ed

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8c2f2978c4d7af4013ff5bc5a300a4dee5b78ee16dfa536d52e7f1cfdc00ec31
MD5 844644e0d363b5f7f8f66a9463916f28
BLAKE2b-256 c3fbc80f7cdb59ff95c40d7550b680144d1c69df94440e9c60a71c4544f36ebe

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7cf7932eeaba71c50bade4a0a3138cfa1792ab855b8fc8d70655ac0328ff7f30
MD5 de6af86487a52bcf31110a1827da90f4
BLAKE2b-256 e3bc09706de1a0b7f3ddc9c52c7f99890c39373a91bec0ba0f2335728b0cb5f3

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 eeb1bc418e79d943d4a354354d1ef9d7c87973828c1428a6153d52443d19e38a
MD5 2621e3d48ef57721d5c05939989cb711
BLAKE2b-256 c3d2a82d977a973846ff53ca13a3d4158101e1097f6219d44fedacab2d00c852

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp313-cp313-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 4360c8e82143e001761cb6b43f86bea6d185326068ae51156aa5f60d29117eff
MD5 39da4e9191519a4507199f50bf79efe8
BLAKE2b-256 386e2e164b8bc6dccd080f56dfdac4a34afac5944837bedba62f6325d11250f6

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: sqlcycli-1.5.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 6.0 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for sqlcycli-1.5.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 667598780d0e155d0f1ea8c41de168d6b755f928502193227f56cb7aedb0b77d
MD5 95e21904ce6750f0ae092a136ea49761
BLAKE2b-256 7665b0a23213cc2b04ed48db885433ef91629d17a38752def78bd82a4ee409de

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 195e1e7fde622a386f1ab43306ca7bd4ecd092ef27fe515f6d72e667c6e8d1bf
MD5 bd8f4c7548c423bedae2c5c54e094f59
BLAKE2b-256 e3119a23e39a58e0fcb7d56939cb20e413cb1ebcff751f293fcba89c4238a62e

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7d0f7f9f8c8cb7961169808afbfd39f80d30438d39e9d29df8898ba2ec126daa
MD5 4aa6db2fafa6f0b927ff25243e43f91f
BLAKE2b-256 296127c8e3a965c7165a2b400601e9b7985988d19052f017cc2dfc866950a30f

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6276e574fd53ae971837d32deb317374d310f2436ad90e6bf8cdd196631c5076
MD5 4e84d36b21a06c7679552a60ecb857d7
BLAKE2b-256 6d680703ee83eef449d66d4da3e4223012f30f687cd73b92e9f7a369a613f419

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 865ce94ae52f1322fd112c975ce3891d095ff245bd09dfc8b35bec822818a87a
MD5 8f491aa170137069a0837759d21e84fe
BLAKE2b-256 19927e33cd4a7e65a7d38ae25da6ff2c70274e7ed5a8966a9cbc7d5bd7126df6

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp312-cp312-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp312-cp312-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 cd6d9ab3757d8d0463bba94564c39a8c891c7c97d9a6b4c57d6996b71434c97a
MD5 bddb648ca362cebd0d84141a400878fa
BLAKE2b-256 7410a4f4beb5c4c06a7472d84ad3fcc546d0861540712bf1e26c91842c89e294

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: sqlcycli-1.5.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 6.1 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for sqlcycli-1.5.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7106306ebbe6c09a3eac7f958beda69f43875811192d50af06e13a57b9a8bb92
MD5 d6b84454ca12b6aa02d1ae0ceb1d0e29
BLAKE2b-256 a5d1b3da8ea529e37feb5c162650b02f03daf1a51bdfb27bd5c433990596f68f

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 f51dab8f041cfef2709f2537bddb1561df4c6c80e6d9efaa31c5d624e72a17dc
MD5 0f7e33060cc6eb1723db4597d412d7f0
BLAKE2b-256 8821da79406200a074bb9f407a685845a5899133f766678228ee9d679d7fe6c7

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 89eeb12c45cab6e35b09a5ad53ce2d973720e9c2dbf918f7646053835e67853c
MD5 69021f0df6266629d4c784b25e48cc2c
BLAKE2b-256 fb4c9d34840f0f3283d45733ed8dd06c9659a2d561b08fdc3c36c29fa22a6296

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 25d7c4634e01976fe1288a5181d03a7ab49216582f9b63d9dc2a3f6c3c6b1f95
MD5 281bb39876cc57c0faf4530fb64ac8d1
BLAKE2b-256 977c609fcd7e52bac95834d9479048487f95f02c05cb3cdea805487b3f123dff

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 42111f6138c8c9ac8fcec8f81adef4c32d3385aeb194c59c34188c0d70679152
MD5 74d0b6ada402ffae68807f3535b844b5
BLAKE2b-256 3d6826ddc0006439072a6f2b94c8822438266a66575c6bf5b43caa36214813c9

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 e94d44f3e126ae7ab9b0000e979a88391111bbdd1cf3c6d74c1aea9e20ae6fc5
MD5 816b0e77fd69de1a5a6abbca77f88fe7
BLAKE2b-256 b4a651ef9b450c7347f56f0d08ac5c41196c05161a2e4b9f59ba5ab7b875875b

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: sqlcycli-1.5.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 6.1 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for sqlcycli-1.5.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 1174736633cc1f14088ce659f7f3d8c83086b7f18423f75fa3dc217afceabcc6
MD5 d8c7c1726178f2b9edbfd5791a4ada1a
BLAKE2b-256 a496b146ee6fa8c3c2a71dcaaab97cc9b8fcc94f3f3776f13632857d88100ecc

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d9917fac986dafa364b397d6b298817ebb9b5a6eb6580fd162ddad4563505979
MD5 00ebfce6a44822f676db47e29cf76f44
BLAKE2b-256 03ce2999814df4a1d93f4ed96bb30af9cb1bbb86900e4bd4cfeb9ff52ba033f0

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 da3e894dc97ffa48b3c139405270cbe2f6e72ffa06b0155f6e9003cd4fe83011
MD5 d226e7f637179d597744c36589162ce0
BLAKE2b-256 b8310166592a133820cb323be4f4da5704247bebcb7ad648f5327295b48c62f7

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a5039c25b7b120ec9048ad81acfbe87de6619cfa0c24a68cf87e326b6e021178
MD5 e8576b5953e7a1a9cbea450d829771ec
BLAKE2b-256 3be918e8fedc84bba2f1d36a06ddc1f7090b6bf656384097699f30e3af2758ac

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 826c7eb7b4b8d773e234a57ccfcf685165f468e6db56533009a6242f4e079be7
MD5 235bc9d93b592bf7aeaf1ee15966584e
BLAKE2b-256 724e29360f732020d91e457e8896c7976d0f9104d0b72ad62db0310806dd54fd

See more details on using hashes here.

File details

Details for the file sqlcycli-1.5.0-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for sqlcycli-1.5.0-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 b83a230331b6d70d812cd63463937d81c442ff6ec59bd77a28eb367018fb9b5e
MD5 d5b92ba46b2ea98e2fe8345454149f85
BLAKE2b-256 b7b909b98357a262cf46b1d63a501251088492898b45aafbd5ce1d1782e66999

See more details on using hashes here.

Supported by

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