调用数据库删除两个相关联数据时,遇到一个删除操作调用成功另一个调用失败导致有脏数据怎么办?
例如下面的代码,要实现user1的好友列表中移除user2,user2的好友列表中移除user1,而调用数据库时user1更新数据成功,user2更新失败,导致user1的好友列表里没有user2,而user2的好友列表里还存在user1。这种情况应该如何处理? const _=wx.cloud.database().command
wx.cloud.database().collection('friends').where({
id:user1_id,
}).update({
data:{
friendlist:_.pull(_.eq(user2_id))
},
success(){
wx.cloud.database().collection('friends').where({
id:user2_id,
}).update({
data:{
friendlist:_.pull(_.eq(user1_id))
}
})
}
})