跳转到主要内容

关系型数据库

了解如何通过将 Prisma ORM 连接到你的数据库并生成用于数据库访问的 Prisma Client,从而将 Prisma ORM 添加到现有的 Node.js 或 TypeScript 项目中。以下教程向你介绍 Prisma CLIPrisma ClientPrisma Introspection

提示

如果你正在从另一个 ORM 迁移到 Prisma ORM,请参阅我们的 从 TypeORM 迁移从 Sequelize 迁移 迁移指南。

先决条件

为了成功完成本指南,你需要

  • 一个包含 package.json 的现有 Node.js 项目
  • Node.js 已安装在你的机器上(请参阅 系统要求 以了解官方支持的版本)
  • 一个 PostgreSQL 数据库服务器正在运行,并且有一个至少包含一个表的数据库

有关确切的版本要求,请参阅系统要求

确保你手头有你的数据库连接 URL(包括你的身份验证凭据)!如果你没有正在运行的数据库服务器,只想探索 Prisma ORM,请查看快速入门

设置 Prisma ORM

第一步,导航到包含 package.json 文件的项目目录中。

接下来,将 Prisma CLI 作为开发依赖项添加到你的项目中

npm install prisma --save-dev
注意

如果你的项目包含多个带有 package.json 文件的目录(例如,frontendbackend 等),请注意 Prisma ORM 专为在 API/后端层中使用而设计。要设置 Prisma,请导航到包含相关 package.json 文件的相应后端目录,并在那里配置 Prisma。

现在你可以通过在 Prisma CLI 前面加上 npx 来调用它

npx prisma
信息

请参阅安装说明,了解如何使用不同的包管理器安装 Prisma ORM。

接下来,通过使用以下命令创建你的 Prisma Schema 文件来设置你的 Prisma ORM 项目

npx prisma init --datasource-provider postgresql --output ../generated/prisma

此命令执行以下几项操作

  • 创建一个名为 prisma 的新目录,其中包含一个名为 schema.prisma 的文件,该文件包含带有数据库连接变量和模式模型的 Prisma Schema。
  • 将数据源设置为PostgreSQL并将输出分别设置为自定义位置。
  • 在项目的根目录中创建 .env 文件,该文件用于定义环境变量(例如你的数据库连接)
使用版本控制?

如果你正在使用版本控制(如 git),我们建议你在 .gitignore 中添加一行,以便从你的应用程序中排除生成的客户端。在此示例中,我们要排除 generated/prisma 目录。

.gitignore
generated/prisma/

请注意,prisma init 创建的默认模式使用 PostgreSQL 作为 provider。如果你没有使用 datasource-provider 选项指定 provider,则需要编辑 datasource 块以使用 postgresql provider 代替

prisma/schema.prisma
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}