gpt4 book ai didi

node.js - Mongoose/MongoDB - 删除和插入作为一个事务

转载 作者:可可西里 更新时间:2023-11-01 09:48:16 26 4
gpt4 key购买 nike

我想删除 mongo 集合中的某些文档集并插入新记录,以防插入失败我想回滚删除。基本上,它是两者兼而有之。有人知道什么是最好的方法。我正在使用 mongoose 和 nodejs。

最佳答案

尝试使用 promise 。在您的架构中再插入一个字段,例如 isDeleted。当您删除某些文档时,将其设置为 true 并在删除 promise 成功时,如果文档成功插入,则根据需要永久删除该记录。

像这样

db.collection.findOneAndUpdate(query)
.exec()
.then(
// write your insert logic here
db.collection.insert(query)
.exec()
.then()
.catch(
//if anything goes wrong set isDeleted
//to false again.
)
)
.catch()

关于node.js - Mongoose/MongoDB - 删除和插入作为一个事务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45152875/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com