28 lines
837 B
Python
28 lines
837 B
Python
|
import aiomysql
|
||
|
from utils import get_parameters
|
||
|
|
||
|
class MySQLDB:
|
||
|
def __init__(self):
|
||
|
self.pool = None
|
||
|
self.parameters = get_parameters()
|
||
|
print(self.parameters)
|
||
|
async def connect(self):
|
||
|
self.pool = await aiomysql.create_pool(
|
||
|
host=self.parameters["host"],
|
||
|
port=self.parameters["port"],
|
||
|
user=self.parameters["user"],
|
||
|
password=self.parameters["password"],
|
||
|
db=self.parameters["db"],
|
||
|
autocommit=True
|
||
|
)
|
||
|
|
||
|
async def close(self):
|
||
|
self.pool.close()
|
||
|
await self.pool.wait_closed()
|
||
|
|
||
|
async def execute(self, query, *args):
|
||
|
async with self.pool.acquire() as conn:
|
||
|
async with conn.cursor() as cur:
|
||
|
await cur.execute(query, args)
|
||
|
return await cur.fetchall()
|