跳到主要内容

SQLAlchemy + FastAPI 从零到一完整教程

一套为完全没接触过数据库 ORM 的新手准备的系统教程。 从"什么是数据库"讲起,一路学到用 FastAPI + SQLAlchemy 写出一个完整的后端项目。

📚 教程特点

  • 零基础友好:只要求你会 Python 基础语法(变量、函数、类、字典)
  • 循序渐进:每一章建立在前一章基础上,不跳步
  • 代码可运行:所有示例代码都可以直接复制运行,使用 SQLite 无需安装数据库软件
  • 紧跟时代:全程使用 SQLAlchemy 2.0 现代语法 + Pydantic v2 + FastAPI 最新写法
  • 实战导向:最后带你完成一个真实的"图书管理系统 API"项目

🗺️ 学习路线图

第1章 入门准备 → 搞懂概念、装好环境、跑通第一个程序

第2章 核心基础 → Engine / 模型定义 / Session(三大支柱)

第3章 增删改查 (CRUD) → 日常开发 80% 的工作

第4章 表关系 → 一对多、多对多,数据库真正的威力

第5章 进阶主题 → 连接查询、事务、数据库迁移、异步

第6章 FastAPI 集成 → 把 SQLAlchemy 接入 Web 框架

第7章 实战项目 → 从零构建图书管理系统 API

附录 → 常见报错急救 + 语法速查表

📖 目录

第1章 入门准备

第2章 核心基础

第3章 增删改查(CRUD)

第4章 表关系

第5章 进阶主题

第6章 FastAPI 集成

第7章 实战项目:图书管理系统

附录

🎯 如何使用本教程

  1. 按顺序学:前 4 章是地基,请不要跳章。第 5 章的 5.3、5.4 可以先跳过,学完 FastAPI 再回来看。
  2. 动手敲代码:看懂 ≠ 会写。每一章的代码请亲手敲一遍运行。
  3. 遇到报错先查附录 A:新手 90% 的报错都收录在里面了。
  4. 善用速查表:学完之后,附录 B 可以当日常开发的"字典"用。

🧰 版本要求

软件版本要求
Python3.10 及以上
SQLAlchemy2.0 及以上
FastAPI0.110 及以上
Pydantic2.x

⚠️ 注意:网上很多旧教程使用 SQLAlchemy 1.x 的 session.query() 写法,本教程使用 2.0 官方推荐的 select() 写法。两者语法差异较大,学习时请注意区分。

开始学习 → 第1章 1.1 什么是数据库、SQL 和 ORM