비동기식으로 세션 생성
비동기식도 동기식과 거의 동일합니다.
파이썬 예시 코드
import asyncio
from sqlalchemy.ext.asyncio import create_async_engine, async_sessionmaker
from sqlalchemy.orm import declarative_base, mapped_column, Mapped, sessionmaker
AsyncSessionLocal = async_sessionmaker(
bind=async_engine,
expire_on_commit=False,
)
async with AsyncSessionLocal() as session:
stmt = select(User).where(User.username == "puddingcamp")
result = await session.execute(stmt)
user = result.scalars().first()
print(user)
sessionmaker() 대신 async_sessionmaker()로 세션 팩토리를 생성하고, with 문 대신 async with 문을 사용하여 세션 객체를 생성합니다.