AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。

一括書き込み操作

このガイドでは、一括書込み操作を使用して、1 つのデータベース呼び出しで複数の書込み操作を実行する方法を学習できます。

コレクションにドキュメントを挿入し、他の複数のドキュメントを更新し、その後ドキュメントを削除したい場合を考えます。個別の関数を使用する場合、各操作には個別のデータベースの呼び出しが必要です。その代わりに、バルク操作を使用してデータベースへの呼び出し回数を減らすことができます。

C ドライバーは、2 つのバルク書き込み (write) API を提供します:mongoc_bulkwrite_t と mongoc_bulk_operation_t

注意

MongoDB Server 8.0 以降を使用している場合は、mongoc_bulkwrite_t の使用をお勧めします。これは1回の呼び出しで複数のコレクションまたはデータベースにまたがる操作を実行できます。一方、mongoc_bulk_operation_t は1回の呼び出しで1つのコレクションのみを対象とすることができます。

このガイドの例では、Atlas のサンプルデータセットから、sample_restaurantsデータベースのrestaurantsコレクションを使用します。MongoDB Atlasクラスターを無料で作成して、サンプルデータセットをロードする方法については、 MongoDBを使い始めるガイド を参照してください 。

Bulk 書き込み (write)操作には、1 つ以上の書き込み (write)操作が含まれています。バルク書き込み (write)を使用するには、バルク書き込み (write)タイプを作成し、実行したい各操作に対して、対応する append 関数を呼び出す、そしてバルク書き込み (write)を実行します。

バルク書き込み (write)操作を作成するには、mongoc_client_bulkwrite_new() 関数を呼び出します。この関数は、実行する書き込み (write)操作に関する指示を保存するために使用できる mongoc_bulkwrite_t 型の値を返します。バルク書き込み (write)のクライアントを指定するため、mongoc_client_t 値をパラメータとして渡します。

mongoc_bulkwrite_t *bulk = mongoc_client_bulkwrite_new(client);

mongoc_bulkwrite_t 値に、挿入、更新、置換、および削除する操作を追加できます。

挿入操作を実行するには、mongoc_bulkwrite_t 値に挿入指示を追加します。これにより、操作が一括書き込み (write)の一部としてキューに追加されます。

次の例では、mongoc_bulkwrite_append_insertone() 関数を呼び出します。この関数は、次のパラメーターを受け入れます。

Parameter
説明

self

操作を追加する mongoc_bulkwrite_t 値。

ns

ドキュメントを挿入する名前空間は、<database>.<collection> として指定されます。

document

挿入するドキュメント。

opts

操作をカスタマイズするための任意の設定、または NULL。

error

関数が false を返す場合、エラーの詳細を受け取ります。

次の例では、バルク書き込み (write)に挿入操作を追加します。

bson_t *insert_doc = BCON_NEW( "name", BCON_UTF8("Mongo's Deli"), "cuisine", BCON_UTF8("Sandwiches"), "borough", BCON_UTF8("Manhattan"), "restaurant_id", BCON_UTF8("1234"));bson_error_t error; if (!mongoc_bulkwrite_append_insertone( bulk, "sample_restaurants.restaurants", insert_doc, NULL, &error)) { fprintf(stderr, "Failed to add insert operation: %s\n", error.message);} bson_destroy(insert_doc);

複数のドキュメントを挿入するには、各ドキュメントに対して mongoc_bulkwrite_append_insertone() 関数を呼び出します。

更新操作を実行するには、mongoc_bulkwrite_t 値に更新指示を追加します。これにより、バルク書き込み (write)の一部として操作がキュー処理されます。

次の例では、mongoc_bulkwrite_append_updateone() 関数を呼び出します。この関数は、次のパラメーターを受け入れます。

Parameter
説明

self

操作を追加する mongoc_bulkwrite_t 値。

ns

<database>.<collection> として指定された、更新するドキュメントを含む名前空間。

filter

更新するドキュメントを選択するクエリフィルター。

update

一致したドキュメントに適用する更新。

opts

操作をカスタマイズするための任意の設定、または NULL。

error

関数が false を返す場合、エラーの詳細を受け取ります。

次の例では、バルク書き込み (write)に更新操作を追加します。

bson_t *filter_doc = BCON_NEW("name", BCON_UTF8("Mongo's Deli"));bson_t *update_doc = BCON_NEW("$set", "{", "cuisine", BCON_UTF8("Sandwiches and Salads"), "}");bson_error_t error; if (!mongoc_bulkwrite_append_updateone( bulk, "sample_restaurants.restaurants", filter_doc, update_doc, NULL, &error)) { fprintf(stderr, "Failed to add update operation: %s\n", error.message);} bson_destroy(filter_doc);bson_destroy(update_doc);

複数のドキュメントを更新するには、mongoc_bulkwrite_append_updatemany() 関数を呼び出し、前の例に示されているパラメータを渡します。これによりドライバーに、クエリフィルターに一致するすべてのドキュメントを更新するように指示します。

次の例では、バルク書き込み (write)に複数更新操作を追加します。

bson_t *filter_doc = BCON_NEW("name", BCON_UTF8("Mongo's Deli"));bson_t *update_doc = BCON_NEW("$set", "{", "cuisine", BCON_UTF8("Sandwiches and Salads"), "}");bson_error_t error; if (!mongoc_bulkwrite_append_updatemany( bulk, "sample_restaurants.restaurants", filter_doc, update_doc, NULL, &error)) { fprintf(stderr, "Failed to add update operation: %s\n", error.message);} bson_destroy(filter_doc);bson_destroy(update_doc);

replace 操作では、指定されたドキュメントのすべてのフィールドと値を削除し、新しいフィールドと値に置き換えます。置換操作を実行するには、mongoc_bulkwrite_t 値に置換指示を追加します。これにより、その操作がバルク書き込み (write)の一部としてキューに追加されます。

次の例では、mongoc_bulkwrite_append_replaceone() 関数を呼び出します。この関数は、次のパラメーターを受け入れます。

Parameter
説明

self

操作を追加する mongoc_bulkwrite_t 値。

ns

置換するドキュメントを含む名前空間(<database>.<collection> として指定)

filter

置き換えるドキュメントを選択するクエリフィルター。

replacement

一致したドキュメントを置き換えるドキュメント。

opts

操作をカスタマイズするための任意の設定、または NULL。

error

関数が false を返す場合、エラーの詳細を受け取ります。

次の例では、バルク書き込み (write)に置換操作を追加します。

bson_t *filter_doc = BCON_NEW("restaurant_id", BCON_UTF8("1234"));bson_t *replace_doc = BCON_NEW( "name", BCON_UTF8("Mongo's Deli"), "cuisine", BCON_UTF8("Sandwiches and Salads"), "borough", BCON_UTF8("Brooklyn"), "restaurant_id", BCON_UTF8("5678"));bson_error_t error; if (!mongoc_bulkwrite_append_replaceone( bulk, "sample_restaurants.restaurants", filter_doc, replace_doc, NULL, &error)) { fprintf(stderr, "Failed to add replace operation: %s\n", error.message);} bson_destroy(filter_doc);bson_destroy(replace_doc);

複数のドキュメントを置き換えるには、各ドキュメントに対して mongoc_bulkwrite_append_replaceone() 関数を呼び出します。

削除する操作を実行するには、mongoc_bulkwrite_t 値に削除する指示を追加します。これにより、バルク書き込み (write)の一部として操作がキューに追加されます。

次の例では、mongoc_bulkwrite_append_deleteone() 関数を呼び出します。この関数は、次のパラメーターを受け入れます。

Parameter
説明

self

操作を追加する mongoc_bulkwrite_t 値。

ns

<database>.<collection> として指定される、削除するドキュメントを含む名前空間。

filter

削除するドキュメントを選択するクエリフィルター。

opts

操作をカスタマイズするための任意の設定、または NULL。

error

関数が false を返す場合、エラーの詳細を受け取ります。

次の例では、バルク書き込み (write)に削除する操作を追加します。

bson_t *filter_doc = BCON_NEW("name", BCON_UTF8("Mongo's Deli"));bson_error_t error; if (!mongoc_bulkwrite_append_deleteone( bulk, "sample_restaurants.restaurants", filter_doc, NULL, &error)) { fprintf(stderr, "Failed to add delete operation: %s\n", error.message);} bson_destroy(filter_doc);

複数のドキュメントを削除するには、mongoc_bulkwrite_append_deletemany() 関数を呼び出し、前の例に示されているパラメータを渡します。これにより、ドライバーは、クエリフィルターと一致する すべてのドキュメントを削除するように指示されます。

次の例では、多数削除する操作を追加します。

bson_t *filter_doc = BCON_NEW("borough", BCON_UTF8("Manhattan"));bson_error_t error; if (!mongoc_bulkwrite_append_deletemany( bulk, "sample_restaurants.restaurants", filter_doc, NULL, &error)) { fprintf(stderr, "Failed to add delete operation: %s\n", error.message);} bson_destroy(filter_doc);

mongoc_bulkwrite_execute() 関数は次のパラメータを受け入れます。

Parameter
説明

self

各書き込み (write)操作の指示を含む mongoc_bulkwrite_t 値。

opts

操作をカスタマイズするための任意の設定、または NULL。

操作が成功させる場合、関数は操作結果を含む mongoc_bulkwritereturn_t 値を返します。その他の場合、戻り値にはエラーの詳細と㎎もに mongoc_bulkwriteexception_t 値が含まれます。

以下の例に、ドキュメントをバルク書き込み (write)する方法を示します。

bson_error_t error; mongoc_bulkwrite_t *bulk = mongoc_client_bulkwrite_new(client); bson_t *insert_doc = BCON_NEW( "<field name 1>", BCON_UTF8("<value 1>"), "<field name 2>", BCON_UTF8("<value 2>"), "<field name 3>", BCON_UTF8("<value 3>"), "<field name 4>", BCON_UTF8("<value 4>")); mongoc_bulkwrite_append_insertone( bulk, "sample_restaurants.restaurants", insert_doc, NULL, &error);bson_destroy(insert_doc); bson_t *query = BCON_NEW("<field to match>", BCON_UTF8("<value to match>"));bson_t *update = BCON_NEW("$set", "{", "<field name>", BCON_UTF8("<value>"), "}"); mongoc_bulkwrite_append_updateone( bulk, "sample_restaurants.restaurants", query, update, NULL, &error);bson_destroy(query);bson_destroy(update); mongoc_bulkwritereturn_t result = mongoc_bulkwrite_execute(bulk, NULL); if (result.exc) { if (mongoc_bulkwriteexception_error(result.exc, &error)) { fprintf(stderr, "Bulk write error: %s\n", error.message); }} mongoc_bulkwriteresult_destroy(result.res);mongoc_bulkwriteexception_destroy(result.exc);mongoc_bulkwrite_destroy(bulk);

次の例では、mongoc_bulkwrite_execute() 関数を呼び出して、挿入、更新、置換および削除する操作を実行します。

bson_error_t error;mongoc_bulkwritereturn_t result = mongoc_bulkwrite_execute(bulk, NULL); if (result.exc) { if (mongoc_bulkwriteexception_error(result.exc, &error)) { fprintf(stderr, "Bulk write error: %s\n", error.message); }} else if (result.res) { printf("Inserted: %" PRId64 " document(s)\n", mongoc_bulkwriteresult_insertedcount(result.res)); printf("Matched: %" PRId64 " document(s)\n", mongoc_bulkwriteresult_matchedcount(result.res)); printf("Modified: %" PRId64 " document(s)\n", mongoc_bulkwriteresult_modifiedcount(result.res)); printf("Deleted: %" PRId64 " document(s)\n", mongoc_bulkwriteresult_deletedcount(result.res));} mongoc_bulkwriteresult_destroy(result.res);mongoc_bulkwriteexception_destroy(result.exc);

書き込み (write)操作が失敗した場合、C ドライバーは戻り値でエラーを報告し、それ以降の操作は実行しません。

次の例では、mongoc_bulkwriteopts_t 値を作成し、ordered を false に設定し、オプションを mongoc_bulkwrite_execute() に渡します。

mongoc_bulkwriteopts_t *opts = mongoc_bulkwriteopts_new();mongoc_bulkwriteopts_set_ordered(opts, false); mongoc_bulkwrite_t *bulk = mongoc_client_bulkwrite_new(client); // Perform bulk operation mongoc_bulkwritereturn_t result = mongoc_bulkwrite_execute(bulk, opts); mongoc_bulkwriteresult_destroy(result.res);mongoc_bulkwriteexception_destroy(result.exc); mongoc_bulkwriteopts_destroy(opts);mongoc_bulkwrite_destroy(bulk);

順序付けなし一括書き込み 内のいずれかの書き込み操作が失敗した場合、 Cドライバーはすべての操作を試行した後にのみエラーを報告します。

注意

順序なしの一括操作では、実行順序は保証されません。 この順序は、ランタイムを最適化するために一覧表示する方法とは異なる場合があります。

次の表では、バルク書き込み (write)操作の mongoc_bulkwriteopts_t 値で指定できるオプションについて説明します。

オプション
説明

ordered

true の場合、ドライバーは指定された順序で書き込み操作を実行します。エラーが発生した場合、残りの操作は試行されません。

false の場合、ドライバーは操作を任意の順序で実行し、すべての操作を実行しようとします。
デフォルトは true です。

bypassdocumentvalidation

true の場合、書き込み (write)操作時にドキュメント レベルの検証をオプトアウトできます。

writeconcern

一括操作の書込み保証(書込み保証 (write concern)を指定します。 詳細については、 MongoDB Serverマニュアルの「 書込み保証 」を参照してください。

comment

操作にコメントを付けます。 詳細については、 MongoDB Serverマニュアルの 「削除コマンド フィールドのガイド」を参照してください。

let

操作の読みやすさを向上させるために、 の値のリストを含むドキュメントを指定します。 値は、ドキュメントフィールドを参照しない定数または閉じた式である必要があります。 詳細については、 MongoDB Serverマニュアルの let ステートメントを参照してください。

verboseresults

true の場合、返される結果には成功させる各操作の詳細な結果が含まれます。

注意

1.28.0 よりも以前の C ドライバー バージョンを使用している場合は、mongoc_bulk_operation_t を使用します。8.0 より古い MongoDB Server のバージョンを対象とする場合、または単一コレクション書き込み (write)のみを必要とする場合。

Bulk 書き込み (write)操作には、1 つ以上の書き込み (write)操作が含まれています。バルク書き込み (write)を使用するには、バルク書き込み (write)タイプを作成し、実行したい各操作に対して、対応する append 関数を呼び出す、そしてバルク書き込み (write)を実行します。

一括書き込み操作 を実行中前に、mongoc_collection_create_bulk_operation_with_opts() 関数を呼び出します。 この関数は、実行する一括書き込みに関する指示を保存するために使用できる mongoc_bulk_operation_t の値を返します。

mongoc_collection_create_bulk_operation_with_opts() 関数は次のパラメータを受け入れます。

Parameter
説明

collection

変更するコレクション。

opts

操作をカスタマイズするためのオプション、または NULL。

次の例では、restaurants コレクションをパラメータとして渡して、mongoc_collection_create_bulk_operation_with_opts() 関数を呼び出します。

mongoc_bulk_operation_t *bulk = mongoc_collection_create_bulk_operation_with_opts(collection, NULL);

mongoc_bulk_operation_t 値に、挿入、更新、置換、および削除する操作を追加できます。

挿入操作を実行するには、mongoc_bulk_operation_t 値に挿入指示を追加します。これにより、操作が一括書き込み (write)の一部としてキューに追加されます。

次の例では、mongoc_bulk_operation_insert_with_opts() 関数を呼び出します。この関数は、次のパラメーターを受け入れます。

Parameter
説明

bulk

操作を追加する mongoc_bulk_operation_t 値。

document

挿入するドキュメント。

opts

操作をカスタマイズするための任意の設定、または NULL。

error

bson_error_t エラー値の任意のロケーション。

次の例では、バルク書き込み (write)に挿入操作を追加します。

bson_t *insert_doc = BCON_NEW( "name", BCON_UTF8("Mongo's Deli"), "cuisine", BCON_UTF8("Sandwiches"), "borough", BCON_UTF8("Manhattan"), "restaurant_id", BCON_UTF8("1234"));bson_error_t error; if (!mongoc_bulk_operation_insert_with_opts(bulk, insert_doc, NULL, &error)) { fprintf(stderr, "Failed to add insert operation: %s\n", error.message);} bson_destroy(insert_doc);

複数のドキュメントを挿入するには、各ドキュメントに対して mongoc_bulk_operation_insert_with_opts() 関数を呼び出します。

更新操作を実行するには、mongoc_bulk_operation_t 値に更新指示を追加します。これにより、バルク書き込み (write)の一部として操作がキュー処理されます。

次の例では、mongoc_bulk_operation_update_one_with_opts() 関数を呼び出します。この関数は、次のパラメーターを受け入れます。

Parameter
説明

bulk

操作を追加する mongoc_bulk_operation_t 値。

selector

更新するドキュメントを選択するクエリフィルター。

document

一致したドキュメントに適用する更新。

opts

操作をカスタマイズするための任意の設定、または NULL。

error

bson_error_t エラー値の任意のロケーション。

次の例では、バルク書き込み (write)に更新操作を追加します。

bson_t *filter_doc = BCON_NEW("name", BCON_UTF8("Mongo's Deli"));bson_t *update_doc = BCON_NEW("$set", "{", "cuisine", BCON_UTF8("Sandwiches and Salads"), "}");bson_error_t error; if (!mongoc_bulk_operation_update_one_with_opts(bulk, filter_doc, update_doc, NULL, &error)) { fprintf(stderr, "Failed to add update operation: %s\n", error.message);} bson_destroy(filter_doc);bson_destroy(update_doc);

複数のドキュメントを更新するには、mongoc_bulk_operation_update_many_with_opts() 関数を呼び出し、前の例に示されているパラメータを渡します。これによりドライバーに、クエリフィルターに一致するすべてのドキュメントを更新するように指示します。

次の例では、バルク書き込み (write)に複数更新操作を追加します。

bson_t *filter_doc = BCON_NEW("name", BCON_UTF8("Mongo's Deli"));bson_t *update_doc = BCON_NEW("$set", "{", "cuisine", BCON_UTF8("Sandwiches and Salads"), "}");bson_error_t error; if (!mongoc_bulk_operation_update_many_with_opts(bulk, filter_doc, update_doc, NULL, &error)) { fprintf(stderr, "Failed to add update operation: %s\n", error.message);} bson_destroy(filter_doc);bson_destroy(update_doc);

replace 操作では、指定されたドキュメントのすべてのフィールドと値を削除し、新しいフィールドと値に置き換えます。置換操作を実行するには、mongoc_bulk_operation_t 値に置換指示を追加します。これにより、その操作がバルク書き込み (write)の一部としてキューに追加されます。

次の例では、mongoc_bulk_operation_replace_one_with_opts() 関数を呼び出します。この関数は、次のパラメーターを受け入れます。

Parameter
説明

bulk

操作を追加する mongoc_bulk_operation_t 値。

selector

置き換えるドキュメントを選択するクエリフィルター。

document

一致したドキュメントを置き換えるドキュメント。

opts

操作をカスタマイズするための任意の設定、または NULL。

error

bson_error_t エラー値の任意のロケーション。

次の例では、バルク書き込み (write)に置換操作を追加します。

bson_t *filter_doc = BCON_NEW("restaurant_id", BCON_UTF8("1234"));bson_t *replace_doc = BCON_NEW( "name", BCON_UTF8("Mongo's Deli"), "cuisine", BCON_UTF8("Sandwiches and Salads"), "borough", BCON_UTF8("Brooklyn"), "restaurant_id", BCON_UTF8("5678"));bson_error_t error; if (!mongoc_bulk_operation_replace_one_with_opts(bulk, filter_doc, replace_doc, NULL, &error)) { fprintf(stderr, "Failed to add replace operation: %s\n", error.message);} bson_destroy(filter_doc);bson_destroy(replace_doc);

複数のドキュメントを置き換えるには、各ドキュメントに対して mongoc_bulk_operation_replace_one_with_opts() 関数を呼び出します。

削除する操作を実行するには、mongoc_bulk_operation_t 値に削除する指示を追加します。これにより、バルク書き込み (write)の一部として操作がキューに追加されます。

次の例では、mongoc_bulk_operation_remove_one_with_opts() 関数を呼び出します。この関数は、次のパラメーターを受け入れます。

Parameter
説明

bulk

操作を追加する mongoc_bulk_operation_t 値。

selector

削除するドキュメントを選択するクエリフィルター。

opts

操作をカスタマイズするための任意の設定、または NULL。

error

bson_error_t エラー値の任意のロケーション。

次の例では、バルク書き込み (write)に削除する操作を追加します。

bson_t *filter_doc = BCON_NEW("restaurant_id", BCON_UTF8("5678"));bson_error_t error; if (!mongoc_bulk_operation_remove_one_with_opts(bulk, filter_doc, NULL, &error)) { fprintf(stderr, "Failed to add delete operation: %s\n", error.message);} bson_destroy(filter_doc);

複数のドキュメントを削除するには、mongoc_bulk_operation_remove_many_with_opts() 関数を呼び出し、前の例に示されているパラメータを渡します。これにより、ドライバーは、クエリフィルターと一致する すべてのドキュメントを削除するように指示されます。

次の例では、バルク書き込み (write)に複数削除する操作を追加します。

bson_t *filter_doc = BCON_NEW("borough", BCON_UTF8("Manhattan"));bson_error_t error; if (!mongoc_bulk_operation_remove_many_with_opts(bulk, filter_doc, NULL, &error)) { fprintf(stderr, "Failed to add delete operation: %s\n", error.message);} bson_destroy(filter_doc);

mongoc_bulk_operation_execute() 関数は次のパラメータを受け入れます。

Parameter
説明

bulk

各書き込み (write)操作の指示を含む mongoc_bulk_operation_t 値。

reply

結果ドキュメント用の上書き可能なストレージへの任意のポインター、または NULL です。

error

bson_error_t エラー値の任意のロケーション。

以下の例に、ドキュメントをバルク書き込み (write)する方法を示します。

bson_error_t error; mongoc_bulk_operation_t *bulk = mongoc_collection_create_bulk_operation_with_opts(collection, NULL); bson_t *insert_doc = BCON_NEW( "<field name>", BCON_UTF8("<value>"), "<field name>", BCON_UTF8("<value>"), "<field name>", BCON_UTF8("<value>"), "<field name>", BCON_UTF8("<value>")); mongoc_bulk_operation_insert(bulk, insert_doc);bson_destroy(insert_doc); bson_t *query = BCON_NEW("<field to match>", BCON_UTF8("<value to match>"));bson_t *update = BCON_NEW("$set", "{", "<field name>", BCON_UTF8("<value>"), "}"); mongoc_bulk_operation_update_one(bulk, query, update, false);bson_destroy(query);bson_destroy(update); bool result = mongoc_bulk_operation_execute(bulk, NULL, &error);if (!result) { fprintf(stderr, "Bulk operation error: %s\n", error.message);} mongoc_bulk_operation_destroy(bulk);

次の例では、mongoc_bulk_operation_execute() 関数を呼び出して、挿入、更新、置換および削除する操作を実行します。

bson_error_t error;bool result = mongoc_bulk_operation_execute(bulk, NULL, &error); if (!result) { printf("Bulk operation error: %s\n", error.message);} mongoc_bulk_operation_destroy(bulk);

いずれかの書き込み (write)操作が失敗した場合、C ドライバーは error 出力パラメータを設定し、それ以降の操作は行われません。

オプション値を指定する BSON ドキュメントを渡すことによって、mongoc_collection_create_bulk_operation_with_opts() 関数の挙動を変更することができます。

次の例では、 mongoc_collection_create_bulk_operation_with_opts() 関数を呼び出し、ordered オプションを false に設定します。

bson_t opts;BSON_APPEND_BOOL(&opts, "ordered", false);bulk = mongoc_collection_create_bulk_operation_with_opts(collection, &opts); // Perform bulk operation bson_destroy(&opts);mongoc_bulk_operation_destroy(bulk);

順序付けなし一括書き込み 内のいずれかの書き込み操作が失敗した場合、 Cドライバーはすべての操作を試行した後にのみエラーを報告します。

注意

順序なしの一括操作では、実行順序は保証されません。 この順序は、ランタイムを最適化するために一覧表示する方法とは異なる場合があります。

次の表には、mongoc_collection_create_bulk_operation_with_opts()に渡すオプション ドキュメント内で指定できるオプションについて説明します。

オプション
説明

ordered

true の場合、ドライバーは指定された順序で書き込み操作を実行します。エラーが発生した場合、残りの操作は試行されません。

false の場合、ドライバーは操作を任意の順序で実行し、すべての操作を実行しようとします。
デフォルトは true です。

writeConcern

一括操作の書込み保証(書込み保証 (write concern)を指定します。 詳細については、 MongoDB Serverマニュアルの「 書込み保証 」を参照してください。

sessionId

指定されたセッション内でバルク操作を実行します。詳細については、MongoDB Serverマニュアルの「サーバー セッション」を参照してください。

comment

操作にコメントを付けます。 詳細については、 MongoDB Serverマニュアルの 「削除コマンド フィールドのガイド」を参照してください。

let

操作の読みやすさを向上させるために、 の値のリストを含むドキュメントを指定します。 値は、ドキュメントフィールドを参照しない定数または閉じた式である必要があります。 詳細については、 MongoDB Serverマニュアルの let ステートメントを参照してください。

個々の書込み操作を実行する方法については、次のガイドを参照してください。

このガイドで説明した関数や型の詳細については、次のAPIドキュメントを参照してください。