跳至主要内容

在 TypeScript 和 Prisma Postgres 中使用 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 应用程序向数据库发送查询。

© . All rights reserved.