使用不同資料更新許多記錄的最佳方法是什麼? 我就是這樣做的
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檔案中加入預覽功能