跳到主要内容

使用 Prisma Migrate

创建数据库 schema

在本指南中,你将使用 Prisma Migrate 在数据库中创建表。

为此,首先将以下 Prisma 数据模型添加到你位于 prisma/schema.prisma 的 Prisma schema 文件中

prisma/schema.prisma
model Post {
id Int @id @default(autoincrement())
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
title String
content String?
published Boolean @default(false)
author User @relation(fields: [authorId], references: [id])
authorId Int
}

model Profile {
id Int @id @default(autoincrement())
bio String?
user User @relation(fields: [userId], references: [id])
userId Int @unique
}

model User {
id Int @id @default(autoincrement())
email String @unique
name String?
posts Post[]
profile Profile?
}

这个数据模型定义了三个 模型(它们将被映射到底层数据库中的

  • Post
  • Profile
  • User

它还定义了两个 关系

  • UserPost 之间的一对多关系(即“一个用户可以拥有多篇帖子”)
  • UserProfile 之间的一对一关系(即“一个用户可以拥有一个个人资料”)

要将你的数据模型映射到数据库 schema,你需要使用 prisma migrate CLI 命令

npx prisma migrate dev --name init

这个命令做了两件事

  1. 它为这次迁移生成了一个新的 SQL 迁移文件
  2. 它针对数据库运行了 SQL 迁移文件

你可以在新创建的 prisma/migrations 目录中检查生成的 SQL 迁移文件。

在 Prisma Studio 中探索你的数据库

Prisma Studio 是一个用于数据库的可视化编辑器。你可以在终端中使用以下命令打开它

npx prisma studio

由于你刚刚创建了数据库,所以不会看到任何记录,但你可以查看空的 UserPostProfile 表。

太棒了,你现在已经使用 Prisma Migrate 在数据库中创建了三个表。在下一节中,你将学习如何安装 Prisma Client,它允许你从 TypeScript 应用向数据库发送查询。