pha*_*ong 3 mongoose mongodb node.js
我正在使用 mongoose 将批量数据插入数据库。该insertMany尽管数据被保存掷E11000重复键错误数据库中获得成功。
这是我的代码:
var data = [
{_id: '598d7ae7c3148a6d853866e8'},
{_id: '598d7afdc3148a6d853866f4'}
]
Movies.insertMany(data, function(error, docs) {});
Run Code Online (Sandbox Code Playgroud)
这种情况很少发生。
感谢任何帮助。
谢谢
MongoDB 不支持事务。
因为您的操作是有序的(默认),MongoDB 开始插入文档,直到所有文档都已写入,或者遇到错误(例如,当 _id数据库中已存在 '),此时 MongoDB 将停止插入其余的文件。
因此,如果您尝试插入 10 个文档,并且在 5 个文档之后发生错误,则前 5 个文档将被插入,但其余的则不会。这是记录在这里。
同一份文件还建议如何处理这个问题:禁用排序,因为“使用ordered[set] to false,插入操作将继续处理任何剩余的文档。”
Movies.insertMany(data, { ordered : false }, function(error, docs) { ... });
Run Code Online (Sandbox Code Playgroud)