🔺
Prisma · TypeScript ORM

Prisma 完全指南

schema-first、类型安全的 Node.js/TypeScript ORM——一份 schema.prisma 生成完整类型的 Client,Migrate 管迁移演进,Studio 可视化看数据

schema-first
类型安全 Client
声明式迁移
可视化 Studio
多数据库
4+ 支持数据库
10 核心章节
1 份 schema 全搞定

Prisma 是什么?为什么至今仍是 Node.js ORM 首选

Prisma 是 Node.js/TypeScript 生态中最流行的 schema-first ORM:你在一份 schema.prisma 文件里用它自己的声明式 DSL 描述数据模型,运行 prisma generate 后得到一个完全类型安全的 Client——所有查询的入参、返回值都自动推断,改了 schema 重新生成,IDE 立刻感知变化。它由三件套构成:Prisma Client(类型安全查询)、Prisma Migrate(声明式迁移)、Prisma Studio(可视化数据 GUI)。

Prisma 支持 PostgreSQL / MySQL / SQLite / MongoDB / SQL Server / CockroachDB 等多种数据源。它的强项是开发体验:自动补全、清晰的关系 API、优雅的迁移工作流、开箱即用的 Studio。老实说,相比同站的 Drizzle(TS 即 schema、零代码生成、7KB Edge 原生),Prisma 需要独立的 DSL 与 generate 步骤、运行时更重、历史上查询引擎是 Rust 二进制(新版已推出纯 JS/WASM 引擎与 Accelerate 改善 Edge/Serverless 体验)。两者各有取舍——追求极致自动化与成熟生态选 Prisma,追求轻量贴近 SQL 选 Drizzle。

本教程 10 章从零讲到生产:初始化、schema 建模、关系、Migrate 迁移、CRUD、进阶查询、事务与原始 SQL、$extends 等高级特性、框架集成与 Serverless、部署与工程化实战。

核心能力

六大特性让 Prisma 成为团队协作型项目的默认 ORM

📐

schema.prisma DSL

一份声明式 schema 作为单一事实来源,人类可读、易 review,模型/关系一目了然。

🧬

类型安全 Client

prisma generate 产出全类型 Client,查询入参与返回值自动推断,杜绝拼写与类型错误。

🔧

Prisma Migrate

声明式迁移:改 schema → migrate dev 自动生成 SQL 迁移文件,生产用 migrate deploy。

🔍

Prisma Studio

浏览器 GUI 浏览、编辑、筛选数据,改记录、跟关系跳转,本地开发利器。

🗄️

多数据库

PostgreSQL / MySQL / SQLite / MongoDB / SQL Server 一套 API,切库只改 datasource。

🧩

$extends 扩展

Client Extensions:加计算字段、结果扩展、模型方法、query 拦截,实现软删除等模式。

课程目录

10 章从初始化到生产部署,覆盖 PostgreSQL/MySQL/SQLite/MongoDB

Chapter 01

认识 Prisma 与初始化

ORM 概念、Prisma 三件套(Client/Migrate/Studio)、vs Drizzle/TypeORM、prisma init、连接数据库。

入门 init
Chapter 02

schema.prisma 建模

datasource/generator、model、字段类型、@id/@default/@unique、@map、枚举。

schema model
Chapter 03

关系建模

一对多/多对多/一对一、@relation、隐式 vs 显式 M2M、级联删除、自引用关系。

relation M2M
Chapter 04

Prisma Migrate

migrate dev、迁移文件、migrate deploy(生产)、db push(原型)、schema drift、reset。

migrate 迁移
Chapter 05

Prisma Client 基础 CRUD

create/findUnique/findMany/update/delete、select/include、类型推断与生成类型。

CRUD select
Chapter 06

查询进阶

where 过滤器、排序分页、聚合 count/aggregate/groupBy、关系查询、嵌套写入 nested writes。

where groupBy
Chapter 07

事务与原始查询

$transaction(顺序/交互式)、$queryRaw/$executeRaw、乐观并发、批量操作。

transaction raw
Chapter 08

高级特性

Client 扩展 $extends、软删除、全文搜索、JSON 字段、计算字段、多 schema。

$extends 软删除
Chapter 09

与框架集成

Next.js/Express/NestJS 集成、单例 PrismaClient、连接池 & Serverless(Accelerate/Data Proxy)、边缘部署。

Next.js Serverless
Chapter 10

部署与工程化实战

生产迁移策略、seeding、Prisma Studio、性能调优(N+1/索引)、监控、Docker、部署 checklist。

部署 调优
⚒️ 配套开发者工具箱 · JSON / 正则 / 时间戳 / Cron 等 17 款免费在线工具