时间:2021-07-01 10:21:17 帮助过:66人阅读
在连续操作数据库时,如果两个操作有冲突的部分,可能会造成结果不正常。 之前写过这样一段代码: user_Utf8Provider.remove({}, {}, function (result) { user_Utf8Provider.insert(user, {}, function (result) { console.log("创建默认用户"); });}); 上
在连续操作数据库时,如果两个操作有冲突的部分,可能会造成结果不正常。
之前写过这样一段代码:
user_Utf8Provider.remove({}, {}, function (result) { user_Utf8Provider.insert(user, {}, function (result) { console.log("创建默认用户"); }); });
上面的代码的目的是在开发阶段,每次重启服务器,都把以前的用户删除,然后创建一个新的用户,在我的机器上,这个能够实现,但在同事的机器上,却怎么也不能添加新的用户,只是把以前的数据删除掉了,后来发现数据库的操作是异步的,通过一下方法能够实现该需求:
user_Utf8Provider.remove({}, {safe:true}, function (result) { user_Utf8Provider.insert(user, {safe:true}, function (result) { console.log("创建默认用户"); }); });
原文地址:mongodb的原子性, 感谢原作者分享。