文档菜单
文档首页
/ / /
Scala
/ /

批量写入操作

批量操作有两种类型:有序和无序的批量操作

  1. 有序的批量操作按顺序执行所有操作,并在第一个写入错误时失败。

  2. 无序批量操作执行所有操作并报告任何错误。无序批量操作不保证执行顺序。

注意

本指南使用Observable隐式函数,如《快速入门指南》中所述中所述.

以下代码提供了使用有序和无序操作的示例

import org.mongodb.scala._
import org.mongodb.scala.model._
// Ordered bulk operation - order is guaranteed
collection.bulkWrite(
List(InsertOneModel(Document("_id" -> 4)),
InsertOneModel(Document("_id" -> 5)),
InsertOneModel(Document("_id" -> 6)),
UpdateOneModel(Document("_id" -> 1), Document("$set", Document("x" -> 2))),
DeleteOneModel(Document("_id" -> 2)),
ReplaceOneModel(Document("_id"-> 3), Document("_id" -> 3, "x" -> 4)))
).printResults()
// Unordered bulk operation - no guarantee of order of operation
collection.bulkWrite(
List(InsertOneModel(Document("_id" -> 4)),
InsertOneModel(Document("_id" -> 5)),
InsertOneModel(Document("_id" -> 6)),
UpdateOneModel(Document("_id" -> 1), Document("$set", Document("x" -> 2))),
DeleteOneModel(Document("_id" -> 2)),
ReplaceOneModel(Document("_id"-> 3), Document("_id" -> 3, "x" -> 4))),
BulkWriteOptions().ordered(false)
).printResults()

返回

写入操作