Name | CyMySQL JSON |
Version |
1.1.1
JSON |
| download |
home_page | None |
Summary | Python MySQL Driver using Cython |
upload_time | 2025-07-11 08:51:49 |
maintainer | None |
docs_url | None |
author | None |
requires_python | None |
license | None |
keywords |
mysql
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
========
CyMySQL
========
What's CyMySQL
--------------
This package contains a python MySQL client library.
It is a fork project from PyMySQL https://pymysql.readthedocs.io/en/latest/.
CyMySQL is accerarated by Cython.
Documentation on the MySQL client/server protocol can be found here:
http://dev.mysql.com/doc/internals/en/client-server-protocol.html
Requirements
-------------
- Python 3.10+
- MySQL 5.7 or higher, MariaDB
Installation
--------------
With cythonize
::
$ pip install cymysql
Or without cythonize
::
$ NO_CYTHON=1 pip instal cymysql
Example
---------------
Python Database API Specification v2.0
+++++++++++++++++++++++++++++++++++++++++
https://peps.python.org/pep-0249/
::
import cymysql
conn = cymysql.connect(host='127.0.0.1', user='root', passwd='', db='database_name')
cur = conn.cursor()
cur.execute('select foo, bar from baz')
for r in cur.fetchall():
print(r[0], r[1])
asyncio
++++++++++++++++++++++++++++++++++++++
You can use asyncio to write the following.
Use connect
::
import asyncio
import cymysql
async def conn_example():
conn = await cymysql.aio.connect(
host="127.0.0.1",
user="root",
passwd="",
db="database_name",
)
cur = conn.cursor()
await cur.execute("SELECT 42")
print(await cur.fetchall())
asyncio.run(conn_example())
Use pool
::
import asyncio
import cymysql
async def pool_example(loop):
pool = await cymysql.aio.create_pool(
host="127.0.0.1",
user="root",
passwd="",
db="database_name",
loop=loop,
)
async with pool.acquire() as conn:
async with conn.cursor() as cur:
await cur.execute("SELECT 42")
print(await cur.fetchall())
pool.close()
await pool.wait_closed()
loop = asyncio.get_event_loop()
loop.run_until_complete(pool_example(loop))
loop.close()
Raw data
{
"_id": null,
"home_page": null,
"name": "CyMySQL",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": "Hajime Nakagami <nakagami@gmail.com>",
"keywords": "MySQL",
"author": null,
"author_email": "Yutaka Matsubara <yutaka.matsubara@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/aa/11/41f0df6fd5755001310b3a47aef17d051d5e9b568b1b6e7dd7ae114c7b7a/cymysql-1.1.1.tar.gz",
"platform": null,
"description": "========\nCyMySQL\n========\n\nWhat's CyMySQL\n--------------\n\nThis package contains a python MySQL client library.\n\nIt is a fork project from PyMySQL https://pymysql.readthedocs.io/en/latest/.\n\nCyMySQL is accerarated by Cython.\n\nDocumentation on the MySQL client/server protocol can be found here:\nhttp://dev.mysql.com/doc/internals/en/client-server-protocol.html\n\nRequirements\n-------------\n\n- Python 3.10+\n- MySQL 5.7 or higher, MariaDB\n\nInstallation\n--------------\n\nWith cythonize\n\n::\n\n $ pip install cymysql\n\nOr without cythonize\n\n::\n\n $ NO_CYTHON=1 pip instal cymysql\n\nExample\n---------------\n\nPython Database API Specification v2.0\n+++++++++++++++++++++++++++++++++++++++++\n\nhttps://peps.python.org/pep-0249/\n\n::\n\n import cymysql\n conn = cymysql.connect(host='127.0.0.1', user='root', passwd='', db='database_name')\n cur = conn.cursor()\n cur.execute('select foo, bar from baz')\n for r in cur.fetchall():\n print(r[0], r[1])\n\nasyncio\n++++++++++++++++++++++++++++++++++++++\n\nYou can use asyncio to write the following.\n\nUse connect\n::\n\n import asyncio\n import cymysql\n\n async def conn_example():\n conn = await cymysql.aio.connect(\n host=\"127.0.0.1\",\n user=\"root\",\n passwd=\"\",\n db=\"database_name\",\n )\n cur = conn.cursor()\n await cur.execute(\"SELECT 42\")\n print(await cur.fetchall())\n asyncio.run(conn_example())\n\nUse pool\n::\n\n import asyncio\n import cymysql\n\n async def pool_example(loop):\n pool = await cymysql.aio.create_pool(\n host=\"127.0.0.1\",\n user=\"root\",\n passwd=\"\",\n db=\"database_name\",\n loop=loop,\n )\n async with pool.acquire() as conn:\n async with conn.cursor() as cur:\n await cur.execute(\"SELECT 42\")\n print(await cur.fetchall())\n pool.close()\n await pool.wait_closed()\n\n loop = asyncio.get_event_loop()\n loop.run_until_complete(pool_example(loop))\n loop.close()\n",
"bugtrack_url": null,
"license": null,
"summary": "Python MySQL Driver using Cython",
"version": "1.1.1",
"project_urls": {
"Project": "https://github.com/nakagami/CyMySQL/"
},
"split_keywords": [
"mysql"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "aa1141f0df6fd5755001310b3a47aef17d051d5e9b568b1b6e7dd7ae114c7b7a",
"md5": "0896a8c6c66891bc63144b7f343193b7",
"sha256": "c0ace2fa0df92aaed1050d18e039bbea2ed4b65faa5083f3df80e6dc07ca99e5"
},
"downloads": -1,
"filename": "cymysql-1.1.1.tar.gz",
"has_sig": false,
"md5_digest": "0896a8c6c66891bc63144b7f343193b7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 50403,
"upload_time": "2025-07-11T08:51:49",
"upload_time_iso_8601": "2025-07-11T08:51:49.672837Z",
"url": "https://files.pythonhosted.org/packages/aa/11/41f0df6fd5755001310b3a47aef17d051d5e9b568b1b6e7dd7ae114c7b7a/cymysql-1.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-11 08:51:49",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "nakagami",
"github_project": "CyMySQL",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "cymysql"
}