带有 ID 列表的 Prisma deleteMany

Posted

技术标签:

【中文标题】带有 ID 列表的 Prisma deleteMany【英文标题】:Prisma deleteMany with a list of IDs 【发布时间】:2022-01-07 12:39:53 【问题描述】:

我想知道 Prisma 客户端中是否有办法通过 id 批量删除数据库记录。

这样的东西似乎不存在:

const idsToDelete = [5, 29, 255]

prisma.post.deleteMany(
    where: 
        id: 
            equals: idsToDelete
        
    
)

文档提到了Scalar List Filters 的概念,但数字列表似乎不支持这个概念,或者deleteMany 可能不支持。

在后台,我希望有一个 SQL DELETE ... WHERE IN 子句。我不想这样做:

启动一堆单独的 JS 承诺 使用特定于数据库的 Prisma 功能(如果 MongoDB 不支持,则可以) 直接写SQL

【问题讨论】:

【参考方案1】:

您是否尝试过使用in 运算符?

    where: 
        id: 
            in: idsToDelete
        
    

【讨论】:

谢谢,这正是我需要的。你有一个链接到它记录的地方吗? 没问题。客户端 API 参考在这里:prisma.io/docs/reference/api-reference/…

以上是关于带有 ID 列表的 Prisma deleteMany的主要内容,如果未能解决你的问题,请参考以下文章

Next 带有 Prisma 的 js:基于两个条件的 Upsert

在 Prisma + GraphQL 中使用字符串列表作为参数的突变

Prisma 的编译器错误

Prisma-docker 无法连接到服务器

如何在 prisma 中使用带有外键的 createMany?

NestJS-Prisma 如何使用关系字段创建记录?