【发布时间】:2016-03-15 14:12:26
【问题描述】:
大家好,我正在使用 mongodb 版本“mongodb-win32-x86_64-2008plus-ssl-3.0.7-signed”和中间人 mongoose 版本“4.2.5”尝试批量插入、删除和更新。我已经搜索了几天,但没有发现任何答案是明确的。
我有一个数组列表,它在下面,数组列表有四个具有不同标签级别的对象。
var mangoobjectList = [
{ id: 1, name: 'Gopal Vog', origin: 'Rajshahi', tag: 0 },//no change
{ id: 2, name: 'Himsagor', origin: 'Dhaka', tag: 1 },//insert
{ id: 3, name: 'Langra', origin: 'Sylet', tag: 2 },//update
{ id: 4, name: 'Amrupali', origin: 'Chuadanga', tag: 3 }//delete
];
我的意思是说tag = 0 --no operation, tag = 1 -- inset tag = 2 – 更新,标签 = 3 – 删除
现在我想保存这个数组一次性进入 mongodb 数据库。如果任何对象失败,则整个数组将回滚。任何想法或解决方案将不胜感激。
【问题讨论】:
-
@DaveCoast,好的,但是有其他方法吗?
-
@DaveCoast,我想改变我的数据库,你能告诉我哪个 nosql 数据库最适合我吗?
-
大多数 nosql 数据库不支持事务。如果它对您很重要,您应该使用 SQL。
-
我在下面添加了一些示例代码。您可以使用该插件在您的情况下执行事务。如果您不太关心性能,也许它对您有用。