FastAPI+SQLAlchemy数据库连接
配置数据库连接
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
DATABASE_URL = "mysql+pymysql://root:7997@localhost/fastapidemo"
engine = create_engine(
DATABASE_URL,
pool_size=10,
max_overflow=20,
pool_timeout=30,
pool_recycle=1800,
)
SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
创建表模型
from sqlalchemy import Column, Integer, String, ForeignKey, Table
from sqlalchemy.orm import DeclarativeBase, relationship
class Base(DeclarativeBase):
__abstract__ = True
@classmethod
def get_all(cls, session):
return session.query(cls).all