Simple framework for aiomysql
Project description
Aiomysql-Core
Simple framework for aiomysql
Introduce
simple package, easy to use
Document
Installation
pip install aiomysql-core
Simple uses
import asyncio
import aiomysql
from aiomysql_core import AioMysqlCore
async def test_example(loop):
pool = await aiomysql.create_pool(host='', port=3306,
user='', password='',
db='', loop=loop)
core = AioMysqlCore(pool=pool)
rows = await core.query('select * from users where uid=%s', 113)
print(rows)
rows = await core.gener('select * from users limit 100')
async for row in rows:
print(row)
row = await core.get('select * from users where uid=%(uid)s', {'uid': 113})
print(row)
rowcount = await core.execute_rowcount('select * from users where uid=%(uid)s', {'uid': 113})
print(rowcount)
pool.close()
await pool.wait_closed()
loop = asyncio.get_event_loop()
loop.run_until_complete(test_example(loop))
Simple SQLAlchemy uses
import asyncio
from aiomysql.sa import create_engine
from aiomysql_core import AioMysqlAlchemyCore
from sqlalchemy import Column, Integer, String, MetaData, Table
metadata = MetaData()
Test = Table('test', metadata,
Column('id', Integer, primary_key=True),
Column('content', String(255), server_default="")
)
async def test_example(loop):
config = {'user': '', 'password': '', 'db': '',
'host': '', 'port': 3306, 'autocommit': True, 'charset': 'utf8mb4'}
engine = await create_engine(loop=loop, **config)
core = AioMysqlAlchemyCore(engine=engine)
# insert
doc = {'content': 'insert'}
clause = Test.insert().values(**doc)
rowcount = await core.execute_rowcount(clause)
print(rowcount)
# search
clause = Test.select().where(Test.c.id == 1).limit(1)
row = await core.get(clause)
print(row.id, row.content)
clause = Test.select().where(Test.c.id > 1)
rows = await core.query(clause)
async for row in rows:
print(row.id, row.content)
# update
doc = {'content': 'update'}
clause = Test.update().values(**doc).where(Test.c.id == 1)
rowcount = await core.execute_rowcount(clause)
print(rowcount)
# delete
clause = Test.delete().where(Test.c.id == 1)
rowcount = await core.execute_rowcount(clause)
print(rowcount)
await engine.wait_closed()
loop = asyncio.get_event_loop()
loop.run_until_complete(test_example(loop))
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
aiomysql-core-0.0.8.tar.gz
(3.6 kB
view details)
Built Distribution
File details
Details for the file aiomysql-core-0.0.8.tar.gz
.
File metadata
- Download URL: aiomysql-core-0.0.8.tar.gz
- Upload date:
- Size: 3.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7e2657de0a305b1d365043d0814e2c7340ca5d0c5f2bc0e702087f70d1476b07 |
|
MD5 | 4fff76652535ef90b711f467a9512ce1 |
|
BLAKE2b-256 | cd9e8eb03157796380a41f8b93e8f7b16f701d815574c70700891584f341fcc1 |
File details
Details for the file aiomysql_core-0.0.8-py2.py3-none-any.whl
.
File metadata
- Download URL: aiomysql_core-0.0.8-py2.py3-none-any.whl
- Upload date:
- Size: 4.5 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 87a357a6a707c7391c0ad8520e58c8207115b382c1884bcd794df823a5440d13 |
|
MD5 | b58c68992f09f4c83529cb2beb7b2b62 |
|
BLAKE2b-256 | 4acea657aec742fbcf6c4770f89799032e40d1c3fa0e326856e3699402924281 |