📌 准备工作
在开始之前,请确保你的机器上已安装 Node.js(v20.19+、v22.12+ 或 v24.0+)。
🚀 第一步:创建项目并安装 Prisma
-
创建项目目录并初始化:
bashmkdir hello-prisma cd hello-prisma npm init -y -
安装 TypeScript 相关依赖:
bashnpm install typescript tsx @types/node --save-dev npx tsc --init这会将你的项目初始化为一个 TypeScript 项目。
-
安装 Prisma CLI :
Prisma CLI 是管理 Prisma 项目的核心工具,我们将它作为开发依赖安装。
bashnpm install prisma --save-dev
⚙️ 第二步:初始化 Prisma
使用 Prisma CLI 的 init 命令来创建 Prisma 的配置文件。
bash
npx prisma init --datasource-provider sqlite
这个命令会做几件事:
- 创建一个名为
prisma的文件夹,并在其中生成核心的schema.prisma文件。 - 在项目根目录创建一个
.env文件,用于存放数据库连接字符串等环境变量。
📝 第三步:定义数据模型
打开 prisma/schema.prisma 文件,你会看到一些默认配置。将其内容替换为以下数据模型:
prisma
// prisma/schema.prisma
model User {
id Int @id @default(autoincrement())
email String @unique
name String?
posts Post[]
}
model Post {
id Int @id @default(autoincrement())
title String
content String?
published Boolean @default(false)
author User @relation(fields: [authorId], references: [id])
authorId Int
}
这个模型定义了两个表:User 和 Post,它们之间是一对多的关系。
🗄️ 第四步:运行迁移,创建数据库
数据模型定义好后,需要将其同步到数据库中。Prisma Migrate 会为我们生成并执行 SQL 语句。
bash
npx prisma migrate dev --name init
这个命令会:
- 在
prisma/migrations目录下创建一个名为init的 SQL 迁移文件。 - 在数据库中执行这个 SQL 文件,创建
User和Post表。 - 自动执行
prisma generate命令,生成 Prisma Client。
对于 SQLite,这个命令还会在
prisma目录下创建一个dev.db数据库文件。
💻 第五步:安装 Prisma Client 并查询数据
Prisma Client 是一个类型安全的数据库查询构建器,专为你的数据模型生成。
-
安装 Prisma Client 包:
bashnpm install @prisma/client -
创建查询脚本 :
在项目根目录创建一个名为
script.ts的文件,并写入以下代码:typescriptimport { PrismaClient } from '@prisma/client' const prisma = new PrismaClient() async function main() { // 创建一个新用户 const newUser = await prisma.user.create({ data: { name: 'Alice', email: 'alice@prisma.io', }, }) console.log('创建的新用户:', newUser) // 查询所有用户 const allUsers = await prisma.user.findMany() console.log('所有用户:', allUsers) } main() .then(async () => { await prisma.$disconnect() }) .catch(async (e) => { console.error(e) await prisma.$disconnect() process.exit(1) }) -
运行脚本:
bashnpx tsx script.ts你应该能在终端看到新创建的用户和所有用户的列表。
🧰 Prisma 生态的其他工具
除了核心的 Prisma Client 和 Migrate,Prisma 生态还提供了其他有用的工具:
- Prisma Studio :一个现代化的数据库可视化编辑器。在终端运行
npx prisma studio,它会在http://localhost:5555打开一个界面,让你可以直观地浏览和编辑数据。 - Prisma Postgres:Prisma 官方提供的托管 PostgreSQL 数据库服务,可以与 Prisma ORM 无缝集成,提供更便捷的云端数据库体验。