Функция create_async_engine
Функция create_async_engine создает объект
асинхронного движка для работы с базой данных.
Первым параметром функция принимает строку URL
подключения. Движок управляет пулом соединений
и диалектом СУБД, а также поддерживает
асинхронные операции через AsyncEngine.
Синтаксис
create_async_engine(url, [echo])
Пример
Давайте создадим асинхронный движок для базы
SQLite в памяти:
from sqlalchemy.ext.asyncio import create_async_engine
engine = create_async_engine('sqlite+aiosqlite:///:memory:')
print(engine)
Результат выполнения кода:
"AsyncEngine(sqlite+aiosqlite:///:memory:)"
Пример
Давайте включим вывод SQL-запросов параметром echo:
from sqlalchemy.ext.asyncio import create_async_engine
from sqlalchemy import text
import asyncio
engine = create_async_engine('sqlite+aiosqlite:///:memory:', echo=True)
async def main():
async with engine.connect() as conn:
res = await conn.execute(text('SELECT 1'))
print(res.fetchall())
asyncio.run(main())
Итоговый SQL запрос:
SELECT 1
Смотрите также
-
функцию
create_async_engine,
которая создает асинхронный движок базы данных -
класс
async_scoped_session,
который управляет асинхронными сессиями -
класс
AsyncAttrs,
который добавляет асинхронные атрибуты моделям -
класс
AsyncAttrs,
который предоставляет доступ к асинхронным операциям ORM