FastAPI系列-17-数据操作之新增
本文讲解基于SQLAlchemy异步ORM实现数据新增的核心流程,即`POST /books`的改造。关键是将Python对象持久化为数据库行的三步操作:`db.add(book)`为同步API,仅将对象注册至Session内存集合,不产生I/O;`await db.commit()`为异步协程,实际触发flush生成INSERT语句并提交事务,同时回填自增主键;`await db.refresh(book)`按需异步拉取数据库端生成的默认值。事务边界由依赖注入`get_async_db`与DAO内显式`commit`共同控制,异常路径需显式`await db.rollback()`或依赖上下文管理器自动回滚,以确保连接可用。