Docs Menu
Docs Home
/ / /
Scala
/ /

一括書き込み操作

一括操作には、順序付き一括操作と順序なし一括操作の 2 種類があります。

  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()

戻る

書込み操作