使用不同数据更新许多记录的最佳方法是什么? 我就是这样做的
const updateBody = JSON.parse(req.body); try { for (let object of updateBody) { await prisma.comissions.upsert({ where: { producer: object.producer, }, update: { rate: object.rate, }, create: object, }); }
我可以更新它,但需要很长时间才能完成。我知道 transaction
,但我不知道如何使用它。
在 Prisma 中事务查询有两种使用方式。
顺序操作:传递要在事务内顺序执行的 Prisma 客户端查询数组。
交互式交易:传递一个函数,该函数可以包含用户代码,包括 Prisma 客户端查询、非 Prisma 代码以及要在交易中执行的其他控制流。
在我们的例子中我们应该使用交互式交易,因为它包含用户代码,要在Prisma交易中使用回调函数,我们需要向Prisma.schema文件添加预览功能