database - MongoDB $set 由多个用户设置。冲突?数据会被覆盖吗?
问题描述
前几天我问了以下问题: MongoDB $push to nested child - recursive data structure
基本上,我想在 MongoDB 中编辑/添加数据到递归子级。
为了解决这个问题,我在后端创建了一个函数,如下所示:
- 遍历存储在 MongoDB 中的递归数据并找到子 ID
- 在后端编辑/添加数据
- $set 更新 MongoDB 中的全部数据
我的问题是,两个用户同时更新相同的数据会导致任何问题吗?因为我使用的是 $set 而不是 $push 等。
async update(cname: string, id: string, elementIndex: number, elements: Element[]) {
const db = await this.getDB();
const collection = db.collection(cname);
const key = 'elements.' + String(elementIndex);
return new Promise((resolve, reject) => {
collection.updateOne({ id: id }, { $set: { [key]: elements } }, (err, res) => {
if (err) {
reject(err);
}
resolve(res);
});
});
}
解决方案
推荐阅读
- reactjs - react-hook-form 自定义不受控制的输入不会更新它们的元状态(脏,触摸)
- visual-studio-code - VS:代码调试 docker 映像从 55000 开始并递增,我怎样才能使其静态?
- jquery - NetSuite Rest Web Services 查询事务和事务行表
- hadoop - 将在 docker 容器内运行的 apache 超集连接到 Kylin 的问题
- java - 从 Java 调用 Kotlin(找不到符号)
- r - R测试特定的值组是否在ID组中
- c - 有人可以告诉我的树功能有什么问题吗
- javascript - 从响应中获取值并转移到 React 中的另一个组件
- javascript - 如何在悬停时突出显示立方体面?三.js
- swift - 如何为带有可选参数的函数定义回调?