介绍
“ prisma”是一种新型的数据映射器ORM工具,可作为您的Web应用程序和您喜欢的数据库之间的接口。它抽象了与服务器通信的复杂性,并允许您专注于构建应用程序,而不是考虑下一个SQL查询,这要归功于其直观的数据模型,自动迁移,类型安全和自动填充。
入门
要开始使用Prisma,您必须熟悉下面列出的工具集
Prisma客户
Prisma客户端是Prisma数据库工具包的主要组成部分,非常重要,通常将其简单地称为“ Prisma”。它使开发人员能够以无缝和高效的方式与数据库进行交互。
Prisma客户端是Prisma数据库工具包的主要组成部分,非常重要,以至于通常被称为“ Prisma
Prisma Client在其核心上是一种类型安全的数据库客户端,是基于您的Prisma Schema生成的。这意味着您使用PRISMA客户端进行的每个查询都会通过架构验证,以确保您始终使用有效的数据。 Prisma客户端提供了与您的数据库合作的广泛功能,包括基本的CRUD操作,过滤,分类和聚合。
Prisma模式就像一个难题的说明,告诉您所有的作品都在哪里。该模式告诉Prisma您的数据库的外观以及如何组织。
Prisma客户的关键好处之一是易于使用。生成Prisma客户端是一个简单的过程,下面将在本文中介绍,只需几分钟,并且设置了它后,您可以使用熟悉的JavaScript开始与数据库进行交互。打字稿语法。借助Prisma客户端,您无需担心编写复杂的SQL查询或处理低级数据库详细信息。相反,您可以专注于构建充分利用数据的惊人应用程序。
Prisma设置 /安装
- 要开始,您将首先需要将其安装到项目中
npm install prisma --save-dev
npx prisma
- 然后继续创建一个
prisma.schema
文件。该文件定义了您的数据库架构,并作为生成Prisma客户端的基础。
这是一个身份验证系统的Prisma架构文件的示例:
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
generator client {
provider = "prisma-client-js"
}
model User {
id Int @id @default(autoincrement())
email String @unique
password String
}
在此示例中,我们定义了一个称为 db 的datasource,该datasource使用PostgreSQL作为提供商。我们还定义了使用Prisma客户端提供商的称为客户端的生成器。最后,我们定义了一个名为用户的模型,该模型具有 id 电子邮件独特的字段,以及密码字段。
要在代码中使用此模式,您首先需要生成Prisma客户端。您可以通过运行以下命令来执行此操作:
安装Prisma客户端
npm install @prisma/client
此命令还运行prisma generate
命令,该命令生成Prisma客户端,然后您可以使用Prisma客户端将查询发送到数据库。下面是片段
import { PrismaClient } from '@prisma/client'
const prisma = new PrismaClient()
// use `prisma` in your application to read and write data in your DB
要在代码中使用此模式,您首先需要生成Prisma客户端。您可以通过运行以下命令来执行此操作:
npx prisma generate
生成了Prisma客户端后,您可以在代码中使用它与数据库进行交互。这是您如何使用Prisma客户端创建新用户的示例:
const { PrismaClient } = require('@prisma/client')
const prisma = new PrismaClient()
async function createUser(email, password) {
const newUser = await prisma.user.create({
data: {
email: email,
password: password
}
})
return newUser
}
createUser('test@example.com', 'password123')
.then(user => console.log(user))
.catch(error => console.error(error))
在此示例中,我们创建了一个称为 createuser 的函数,该函数将email
和password
作为参数。我们使用Prisma客户端使用指定的email
和password
创建新用户,然后返回新用户。我们还包括一些错误处理,以防万一出现任何问题。
Prisma迁移
prisma迁移是一种强大的工具,可轻松管理Prisma项目中的数据库迁移。使用Prisma迁移,您可以以安全和控制的方式轻松创建,修改和还原数据库模式。
要创建一个新的迁移,您可以运行以下命令:
npx prisma migrate dev --name init
这将创建一个新的目录,称为迁移在您的项目根目录中,以及一个名为“ Init”的新迁移文件。您可以编辑此迁移文件以定义所需的模式更改。
// migrations/20220227150000_init.js
如果您需要出于任何原因需要退回迁移,则可以使用以下命令:
npx prisma migrate reset
有关MongoDB迁移的信息,请阅读here
Prisma Studio
Prisma Studio是可视化工具,可让您使用图形用户界面与数据库进行交互。这是设置Prisma Studio并将其应用于我们之前创建的模式的方法
Prisma Studio实际上被包括在Prisma CLI的一部分中,这意味着当您使用NPM或YARN安装Prisma时,它是自动安装的。
要启动Prisma Studio,您只需要在终端中运行它:
npx prisma studio
这将在您的默认Web浏览器中打开Prisma Studio UI。只要您安装了Prisma,并且您就在包含Prisma架构文件的目录中。
连接到数据库后,您将在Prisma Studio的左侧窗格中看到图形表示。您可以单击每个模型以查看和编辑其数据,以及添加和删除记录。
例如,假设我们要在数据库中添加新用户。我们可以通过单击左侧窗格中的用户模型来做到这一点,然后单击“创建新用户”按钮。这将提出一个表格,我们可以输入新用户的信息。
我们输入了用户的信息并单击“创建”按钮,Prisma Studio将将新用户添加到我们的数据库中,并相应地更新架构的图形表示。
综上所述
尽管Prisma不是第一个ORM工具,但它是一个改变游戏规则的工具,对于希望简化其数据库工作流并比以往更快地构建惊人应用程序的开发人员。 Prisma凭借其直观的数据建模功能,类型安全数据库客户端的生成以及强大的查询功能,彻底改变了我们与数据库互动的方式。通过消除对乏味的SQL查询的需求并简化数据库管理,PRISMA使开发人员可以专注于构建最佳的工作 - 出色的应用程序。