文章

prisma使用两个数据库

prisma使用两个数据库

本文大概介绍怎么操作使用两个数据库及多个数据,需要了解prisma的一些基本操作

1.初始化prisma,一般会在你的项目根目录有个prisma文件夹,文件夹里有个schema.prisma文件,这里可以定义第一个数据库

我的db1schema.prisma文件的开头为:


generator client {
  provider = "prisma-client-js"
}

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

2.然后在prisma文件夹里新建一个schema2.prisma 文件,这个作为db2,请看注释

db2开头为:

generator client {
  provider = "prisma-client-js"
  output   = "./DB2Client/testClient"  #这里会在prisma文件夹里生成客户端用的client 查询文件 很重要
}

datasource db2 {
  provider = "postgresql"
  url      = env("DB2_DATABASE_URL")
}

3.关键——更改db2的模型,每次都需要指定schema.prisma的文件

比如你在schema2.prisma 文件里新建了模型,需要执行

npx prisma migrate dev --name init --schema=./prisma/schema2.prisma

或者拉取已经定义好的模型到指定的schema 文件

npx prisma db pull --schema=./prisma/schema2.prisma

4.客户端使用时,需要指定导入的client schema文件

先生成客户端使用的schema

npx prisma generate --schema=./prisma/schema2.prisma

然后使用DB2

import { PrismaClient } from "@/prisma/DB2Client/testClient; #这里的路径为步骤2定义的路径
const db2_prisma = new PrismaClient();

许可协议:  CC BY 4.0