Prisma

2024-03-02

安装

通过 [[npm]] 安装:

Terminal window
npm install prisma --save-dev
# 调用 CLI
npx prisma

通过 [[bun]] 安装:

Terminal window
bunx prisma

使用

在现有项目目录中执行:

Terminal window
npx prisma init

执行后会做两件事:

  1. 在 prisma 目录内创建 schema.prisma 文件
  2. 在根目录新增 .env 文件,用于定义环境变量

连接数据库

修改prisma/schema.prisma文件:

datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}

.env中添加数据库连接信息:

DATABASE_URL="postgresql://johndoe:randompassword@localhost:5432/mydb?schema=public"
# PostgreSQL (schema 可使用默认)
postgresql://USER:PASSWORD@HOST:PORT/DATABASE?schema=SCHEMA

创建

在 schema.prisma 创建数据模型:

model Post {
id Int @id @default(autoincrement())
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
title String @db.VarChar(255)
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?
}

根据模型在数据库中生成对应表:

Terminal window
npx prisma migrate dev --name init

写入

读取