完成数据库设置表的增删改查

This commit is contained in:
2025-07-01 23:50:16 +08:00
parent 652a78cb05
commit e84b3a7dee
6 changed files with 269 additions and 24 deletions

View File

@@ -4,6 +4,7 @@ from sqlmodel import SQLModel
from sqlalchemy.ext.asyncio import create_async_engine
from sqlmodel.ext.asyncio.session import AsyncSession
from sqlalchemy.orm import sessionmaker
from typing import AsyncGenerator
ASYNC_DATABASE_URL = "sqlite+aiosqlite:///database.db"
@@ -20,12 +21,13 @@ engine = create_async_engine(
_async_session_factory = sessionmaker(engine, class_=AsyncSession)
async def get_session():
async def get_session() -> AsyncGenerator[AsyncSession, None]:
async with _async_session_factory() as session:
yield session
async def init_db():
"""初始化数据库"""
# 创建所有表
async def init_db(
url: str = ASYNC_DATABASE_URL
):
"""创建数据库结构"""
async with engine.begin() as conn:
await conn.run_sync(SQLModel.metadata.create_all)