Mah*_*age 4 mongodb nestjs prisma
我正在使用 NestJS 和 Prisma ORM 开发一些简单的 Todo 应用程序 BE,并使用 MongoDB 作为数据库。我正在使用托管在 MongoDB Altas 云中的免费共享 MongoDB 集群。我还添加0.0.0.0/0到网络访问选项卡,以便任何人都可以连接到数据库。
schema.prisma文件
// This is your Prisma schema file,
// learn more about it in the docs: https://pris.ly/d/prisma-schema
datasource db {
provider = "mongodb"
url = env("DATABASE_URL")
}
generator client {
provider = "prisma-client-js"
}
model Task {
id String @id @default(auto()) @map("_id") @db.ObjectId
name String?
description String?
status TaskStatus @default(TODO)
}
enum TaskStatus {
TODO
INPROGRESS
DONE
}
Run Code Online (Sandbox Code Playgroud)
.env文件
DATABASE_URL="mongodb+srv://<username>:<password>@todoappdb.jfo3m2c.mongodb.net/?retryWrites=true&w=majority"
Run Code Online (Sandbox Code Playgroud)
但是当我尝试运行npx prisma migrate dev --name init命令时它给出以下输出
D:\todoapp-backend>npx prisma migrate dev --name init
Environment variables loaded from .env
Prisma schema loaded from prisma\schema.prisma
Datasource "db"
Error: The "mongodb" provider is not supported with this command. For more info see https://www.prisma.io/docs/concepts/database-connectors/mongodb
0: migration_core::state::DevDiagnostic
at migration-engine\core\src\state.rs:250
Run Code Online (Sandbox Code Playgroud)
有人能指出我有什么问题吗?
Mah*_*age 13
阅读一些内容后,发现prisma migrate命令仅适用于 SQL 数据库,因为它们具有严格的表结构。但 MongoDB 是一个文档数据库,这些数据是非结构化的
因此,我们可以使用以下命令,而不是运行prisma migrate命令
npx prisma generate
Run Code Online (Sandbox Code Playgroud)
此命令创建 Prisma 客户端,为我们的数据库提供类型安全的访问。
参考 - https://www.youtube.com/watch?v=b4nxOv91vWI&ab_channel=Prisma
| 归档时间: |
|
| 查看次数: |
7114 次 |
| 最近记录: |