Docs Menu
Docs Home
/
MongoDB マニュアル
/

ドキュメントの挿入

項目一覧

  • MongoDB Atlas UI でのドキュメントの挿入
  • 単一ドキュメントのインサート
  • 複数のドキュメントの挿入
  • 挿入動作

➤ 右上の [言語選択] ドロップダウンメニューを使用して、以下の例の言語を設定するか、MongoDB Compass を選択します。


このページでは、MongoDB の挿入操作の例を取り上げます。

次の方法を使用して、MongoDB にドキュメントを挿入できます。

  • プログラミング言語のドライバー。

  • MongoDB Atlas UI 。詳しくは、「MongoDB Atlas UI にドキュメントを挿入する」を参照してください。

  • MongoDB Compass

注意

コレクションの作成

現在コレクションが存在しない場合は、挿入操作によってコレクションが作成されます。

MongoDB Atlas UI にドキュメントを挿入するには、次の手順を実行します。MongoDB Atlas UI 内でドキュメントを操作する方法について詳しくは、「ドキュメントの作成、表示、更新、削除」を参照してください。

1
  1. まだ表示されていない場合は、目的のプロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

  2. まだ表示されていない場合は、ナビゲーション バーのProjectsメニューからプロジェクトを選択します。

  3. Clusters ページがまだ表示されていない場合は、サイドバーの Database をクリックします。

    [ Clusters (クラスター) ] ページが表示されます。

2
  1. ドキュメントを追加するクラスターで、[ Browse Collections ] をクリックします。

  2. 左のナビゲーション ペインでデータベースをクリックします。

  3. 左のナビゲーション ペインでコレクションをクリックします。

3
  1. [Insert Document] をクリックします。

  2. {} アイコンをクリックすると、JSON ビューが開きます。

  3. ドキュメント配列をテキスト入力フィールドに貼り付けます。たとえば、次のエントリでは 4 つのドキュメントが作成され、それぞれに 3 つのフィールドが含まれます。

    [
    { "prodId": 100, "price": 20, "quantity": 125 },
    { "prodId": 101, "price": 10, "quantity": 234 },
    { "prodId": 102, "price": 15, "quantity": 432 },
    { "prodId": 103, "price": 17, "quantity": 320 }
    ]
4

MongoDB Atlas はドキュメントをコレクションに追加します。

db.collection.insertOne() は、コレクションに単一のドキュメントを挿入します。

次の例では、新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、MongoDB は ObjectId 値を持つ_idフィールドを新しいドキュメントに追加します。「挿入動作」を参照してください。

MongoDB Compass を使用して単一のドキュメントを挿入するには、次の手順に従います。

  1. ドキュメントを挿入するコレクションに移動します。

    1. 左側の MongoDB Compass ナビゲーション ウィンドウで、ターゲット コレクションが属するデータベースをクリックします。

    2. データベースビューから、ターゲットコレクション名をクリックします。

  2. Insert Documentボタンをクリックします。

    Compass インサート ボタン
  3. ドキュメント内のフィールドごとに、フィールドタイプを選択し、フィールド名と値を入力します。フィールドを追加するには、最後の行番号をクリックした後、次をクリックします。 Add Field After ...

    • Objectタイプでネストされたフィールドを追加するには、最後のフィールドの番号をクリックしてAdd Field After ...を選択します。

    • Array型の場合、最後の要素の行番号をクリックし、 Add Array Element After ...を選択して、配列に要素を追加します。

  4. すべてのフィールドに入力したら、[Insert] をクリックします。

次の例では、test.inventory コレクションに新しいドキュメントを挿入します。

次の例では、新しいドキュメントをinventoryコレクションに挿入します。 ドキュメントに_idフィールドが指定されていない場合、C ドライバーは ObjectId 値を持つ_idフィールドを新しいドキュメントに追加します。 詳細については、「挿入動作 」を参照してください。

IMongoCollection.InsertOne() 単一のドキュメントをコレクションに挿入します。

次の例では、新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、C# ドライバーは ObjectId 値を持つ _id フィールドを新しいドキュメントに追加します。「挿入動作」を参照してください。

Collection.InsertOne は、 1 つ ドキュメント をコレクションに挿入します。

次の例では、新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、ドライバーは ObjectId 値を持つ _id フィールドを新しいドキュメントに追加します。「挿入動作」を参照してください。

com.mongodb.reactivestreams.client.MongoCollection.insertOne は、次のJava Reactive Streams ドライバーを使用して、1 つドキュメントをコレクションに挿入します。

{ item: "canvas", qty: 100, tags: ["cotton"], size: { h: 28, w: 35.5, uom: "cm" } }

次の例では、上記のドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、ドライバーは ObjectId 値を持つ _id フィールドを新しいドキュメントに追加します。「挿入動作」を参照してください。

com.mongodb.client.MongoCollection.insertOne は、1 つドキュメントをコレクションに挿入します。

次の例では、新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、ドライバーは ObjectId 値を持つ _id フィールドを新しいドキュメントに追加します。「挿入動作」を参照してください。

MongoCollection.insertOne は、 1 つ の ドキュメント をコレクションに挿入します。

次の例では、新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、ドライバーは ObjectId 値を持つ _id フィールドを新しいドキュメントに追加します。「挿入動作」を参照してください。

motor.motor_asyncio.AsyncIOMotorCollection.insert_one は、1 つドキュメントをコレクションに挿入します。

次の例では、新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、Motor ドライバーは ObjectId 値を持つ _id フィールドを新しいドキュメントに追加します。「挿入動作」を参照してください。

Collection.insertOne() は、1 つドキュメントをコレクションに挿入します。

次の例では、新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、Node.js ドライバーは ObjectId 値を持つ _id フィールドを新しいドキュメントに追加します。「挿入動作」を参照してください。

MongoDB::Collection::insert_one() は、1 つドキュメントをコレクションに挿入します。

次の例では、新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、Perl ドライバーは ObjectId 値を持つ _id フィールドを新しいドキュメントに追加します。「挿入動作」を参照してください。

MongoDB\\Collection::insertOne() は、1 つドキュメントをコレクションに挿入します。

次の例では、新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、PHP ドライバーは ObjectId 値を持つ _id フィールドを新しいドキュメントに追加します。「挿入動作」を参照してください。

pymongo.collection.Collection.insert_one は、1 つドキュメントをコレクションに挿入します。

次の例では、新しいドキュメントをinventoryコレクションに挿入します。 ドキュメントに_idフィールドが指定されていない場合、PyMongo ドライバーは ObjectId 値を持つ_idフィールドを新しいドキュメントに追加します。 「挿入動作 」を参照してください。

Mongo::Collection#insert_one() は、コレクションに単一のドキュメントを挿入します。

次の例では、新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、Ruby ドライバーは ObjectId 値を持つ _id フィールドを新しいドキュメントに追加します。「挿入動作」を参照してください。

collection.insertOne() は、1 つドキュメントをコレクションに挿入します。

次の例では、新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、Scala ドライバーは ObjectId 値を持つ _id フィールドを新しいドキュメントに追加します。「挿入動作」を参照してください。

db.inventory.insertOne(
{ item: "canvas", qty: 100, tags: ["cotton"], size: { h: 28, w: 35.5, uom: "cm" } }
)
Compass が新しいドキュメントをコレクションに挿入
mongoc_collection_t *collection;
bson_t *doc;
bool r;
bson_error_t error;
collection = mongoc_database_get_collection (db, "inventory");
doc = BCON_NEW (
"item", BCON_UTF8 ("canvas"),
"qty", BCON_INT64 (100),
"tags", "[",
BCON_UTF8 ("cotton"),
"]",
"size", "{",
"h", BCON_DOUBLE (28),
"w", BCON_DOUBLE (35.5),
"uom", BCON_UTF8 ("cm"),
"}");
r = mongoc_collection_insert_one (collection, doc, NULL, NULL, &error);
bson_destroy (doc);
if (!r) {
MONGOC_ERROR ("%s\n", error.message);
goto done;
}
var document = new BsonDocument
{
{ "item", "canvas" },
{ "qty", 100 },
{ "tags", new BsonArray { "cotton" } },
{ "size", new BsonDocument { { "h", 28 }, { "w", 35.5 }, { "uom", "cm" } } }
};
collection.InsertOne(document);
result, err := coll.InsertOne(
context.TODO(),
bson.D{
{"item", "canvas"},
{"qty", 100},
{"tags", bson.A{"cotton"}},
{"size", bson.D{
{"h", 28},
{"w", 35.5},
{"uom", "cm"},
}},
})
Document canvas = new Document("item", "canvas")
.append("qty", 100)
.append("tags", singletonList("cotton"));
Document size = new Document("h", 28)
.append("w", 35.5)
.append("uom", "cm");
canvas.put("size", size);
Publisher<Success> insertOnePublisher = collection.insertOne(canvas);
Document canvas = new Document("item", "canvas")
.append("qty", 100)
.append("tags", singletonList("cotton"));
Document size = new Document("h", 28)
.append("w", 35.5)
.append("uom", "cm");
canvas.put("size", size);
collection.insertOne(canvas);
result = collection.insertOne(
Document("item", "canvas")
.append("qty", 100)
.append("tags", listOf("cotton"))
.append("size", Document("h", 28)
.append("w", 35.5)
.append("uom", "cm")
)
await db.inventory.insert_one(
{
"item": "canvas",
"qty": 100,
"tags": ["cotton"],
"size": {"h": 28, "w": 35.5, "uom": "cm"},
}
)
await db.collection('inventory').insertOne({
item: 'canvas',
qty: 100,
tags: ['cotton'],
size: { h: 28, w: 35.5, uom: 'cm' }
});
$db->coll("inventory")->insert_one(
{
item => "canvas",
qty => 100,
tags => ["cotton"],
size => { h => 28, w => 35.5, uom => "cm" }
}
);
$insertOneResult = $db->inventory->insertOne([
'item' => 'canvas',
'qty' => 100,
'tags' => ['cotton'],
'size' => ['h' => 28, 'w' => 35.5, 'uom' => 'cm'],
]);
db.inventory.insert_one(
{
"item": "canvas",
"qty": 100,
"tags": ["cotton"],
"size": {"h": 28, "w": 35.5, "uom": "cm"},
}
)
client[:inventory].insert_one({ item: 'canvas',
qty: 100,
tags: [ 'cotton' ],
size: { h: 28, w: 35.5, uom: 'cm' } })
collection.insertOne(
Document("item" -> "canvas", "qty" -> 100, "tags" -> Seq("cotton"), "size" -> Document("h" -> 28, "w" -> 35.5, "uom" -> "cm"))
).execute()

insertOne()は、新しく挿入されたドキュメントの _id フィールド値を含むドキュメントを返します。返されたドキュメントの例については、「db.collection.insertOne() リファレンス」を参照してください。

注意

MongoDB Compass は、_id フィールドとその値を自動的に生成します。生成された ObjectId は、ランダムに生成された一意の 16 進値で構成されます。

この値は、ドキュメントが一意であり、有効なObjectIdである限り、ドキュメントを挿入する前に変更できます。 _idフィールドの詳細については、「 _id フィールド 」を参照してください。

mongoc_collection_insert_one truefalseは、成功した場合は を返し、無効な引数またはサーバーまたはネットワーク エラーがある場合は を返し、 エラーを設定します。

Collection.InsertOne 関数は、 InsertOneResult のインスタンスを返します。なお、そのInsertedID 属性には、新しく挿入されたドキュメントの _id が含まれます。

com.mongodb.reactivestreams.client.MongoCollection.insertOne 出版社 を返します オブジェクト。Publisherは、サブスクライブ者がデータをリクエストするときにドキュメントをコレクションに挿入します。

com.mongodb.client.MongoCollection.insertOneが、InsertOneResult のインスタンスを返します。挿入されたドキュメントの _id フィールドには、結果の getInsertedId() メソッドを呼び出すことでアクセスできます。

MongoCollection.insertOne InsertOneResult のインスタンスを返します 。挿入されたドキュメントの_idフィールドには、結果のinsertedIdフィールドにアクセスすることでアクセスできます。

insert_one は、新しく挿入されたドキュメントの _idinserted_id フィールドに持つ pymongo.results.InsertOneResult インスタンスを返します。

insertOne() は、result を提供する Promise を返します。result.insertedId Promise には、新しく挿入されたドキュメントの _id が含まれます。

正常に挿入が行われると、insert_one() メソッドは、MongoDB::InsertOneResult のインスタンスを返します。なお、その inserted_id 属性には、新しく挿入されたドキュメントの _id が含まれます。

正常に挿入が行われると、 insertOne() メソッドは MongoDB\\InsertOneResult のインスタンスを返します。なお、その getInsertedId() メソッドは、新しく挿入されたドキュメントの _id を返します。

insert_one は、新しく挿入されたドキュメントの _idinserted_id フィールドに持つ pymongo.results.InsertOneResult インスタンスを返します。

正常に挿入が行われると、insert_one() メソッドは、Mongo::Operation::Result のインスタンスを返します。なお、その inserted_id 属性には、新しく挿入されたドキュメントの _id が含まれます。

正常に挿入が行われると、collection.insertOne()メソッドは、collection.insertOne().results() のインスタンスを返します。なお、その inserted_id 属性には、新しく挿入されたドキュメントの_id が含まれます。

挿入したばかりのドキュメントを検索するには、コレクションをクエリします。

db.inventory.find( { item: "canvas" } )
コレクション内の一致するドキュメントのクエリ

MongoDB Compass クエリバーでフィルターを指定し、 Findをクリックしてクエリを実行します。

上記のフィルターで、MongoDB Compass がitemフィールドがcanvasに等しいドキュメントのみを返すように指定します。

MongoDB Compass クエリバーの詳細については、Compass クエリバーのドキュメントを参照してください。

mongoc_collection_t *collection;
bson_t *filter;
mongoc_cursor_t *cursor;
collection = mongoc_database_get_collection (db, "inventory");
filter = BCON_NEW ("item", BCON_UTF8 ("canvas"));
cursor = mongoc_collection_find_with_opts (collection, filter, NULL, NULL);
var filter = Builders<BsonDocument>.Filter.Eq("item", "canvas");
var result = collection.Find(filter).ToList();
cursor, err := coll.Find(
context.TODO(),
bson.D{{"item", "canvas"}},
)
FindPublisher<Document> findPublisher = collection.find(eq("item", "canvas"));
FindIterable<Document> findIterable = collection.find(eq("item", "canvas"));
val flowInsertOne = collection
.find(eq("item", "canvas"))
.firstOrNull()
cursor = db.inventory.find({"item": "canvas"})
const cursor = db.collection('inventory').find({ item: 'canvas' });
$cursor = $db->coll("inventory")->find( { item => "canvas" } );
$cursor = $db->inventory->find(['item' => 'canvas']);
cursor = db.inventory.find({"item": "canvas"})
client[:inventory].find(item: 'canvas')
val observable = collection.find(equal("item", "canvas"))

db.collection.insertMany() は、複数ドキュメントをコレクションに挿入できます。ドキュメントの配列をメソッドに渡します。

次の例では、3 つの新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、MongoDB は ObjectId 値を持つ _id フィールドを各ドキュメントに追加します。「挿入動作」を参照してください。

mongoc_bulk_operation_insert_with_opts はコレクションに 複数の ドキュメント を挿入します。ドキュメントのイテラブルをメソッドに渡す必要があります。

次の例では、3 つの新しいドキュメントをinventoryコレクションに挿入します。 ドキュメントに_idフィールドが指定されていない場合、C ドライバーは ObjectId 値を持つ_idフィールドを各ドキュメントに追加します。 「挿入動作 」を参照してください。

IMongoCollection.InsertMany() は、複数ドキュメント をコレクションに挿入できます。ドキュメントの列挙可能なコレクションをメソッドに渡します。

次の例では、3 つの新しいドキュメントを inventory コレクションに挿入します。ドキュメントで _id フィールドが指定されていない場合、ドライバーは ObjectId 値を持つ _id フィールドを各ドキュメントに追加します。挿入動作を参照してください。

Collection.InsertMany複数の ドキュメントをコレクションに挿入できます。

次の例では、3 つの新しいドキュメントを inventory コレクションに挿入します。ドキュメントで _id フィールドが指定されていない場合、ドライバーは ObjectId 値を持つ _id フィールドを各ドキュメントに追加します。挿入動作を参照してください。

com.mongodb.reactivestreams.client.MongoCollection.html.insertMany は、 Java Reactive Streams ドライバー を使用して次のドキュメントを挿入します :

{ item: "journal", qty: 25, tags: ["blank", "red"], size: { h: 14, w: 21, uom: "cm" } }
{ item: "mat", qty: 85, tags: ["gray"], size: { h: 27.9, w: 35.5, uom: "cm" } }
{ item: "mousepad", qty: 25, tags: ["gel", "blue"], size: { h: 19, w: 22.85, uom: "cm" } }

次の例では、3 つの新しいドキュメントを inventory コレクションに挿入します。ドキュメントで _id フィールドが指定されていない場合、ドライバーは ObjectId 値を持つ _id フィールドを各ドキュメントに追加します。挿入動作を参照してください。

com.mongodb.client.MongoCollection.insertManyは、複数ドキュメントをコレクションに挿入できます。ドキュメントのリストをメソッドに渡します。

次の例では、3 つの新しいドキュメントを inventory コレクションに挿入します。ドキュメントで _id フィールドが指定されていない場合、ドライバーは ObjectId 値を持つ _id フィールドを各ドキュメントに追加します。挿入動作を参照してください。

MongoCollection.insertMany はコレクションに 複数の ドキュメント を挿入します。ドキュメントのリストを メソッドのパラメーターとして渡します。

次の例では、3 つの新しいドキュメントをinventoryコレクションに挿入します。 ドキュメントで_idフィールドが指定されていない場合、ドライバーは ObjectId 値を各ドキュメントに追加します。 「挿入動作 」を参照してください。

motor.motor_asyncio.AsyncIOMotorCollection.insert_many は、複数ドキュメントをコレクションに挿入できます。ドキュメントのイテラブルをメソッドに渡します。

次の例では、3 つの新しいドキュメントを inventory コレクションに挿入します。ドキュメントで _id フィールドが指定されていない場合、PyMongo ドライバーは ObjectId 値を持つ _id フィールドを各ドキュメントに追加します。挿入動作を参照してください。

Collection.insertMany() は、複数ドキュメントをコレクションに挿入できます。ドキュメントの配列をメソッドに渡します。

次の例では、3 つの新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、Node.js ドライバーは ObjectId 値を持つ _id フィールドを各ドキュメントに追加します。「挿入動作」を参照してください。

MongoDB::Collection::insert_many() は、複数ドキュメントをコレクションに挿入できます。ドキュメントの配列リファレンスをメソッドに渡します。

次の例では、3 つの新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、Perl ドライバーは ObjectId 値を持つ _id フィールドを各ドキュメントに追加します。「挿入動作」を参照してください。

MongoDB\\Collection::insertMany() は、複数ドキュメントをコレクションに挿入できます。ドキュメントの配列をメソッドに渡します。

次の例では、3 つの新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、PHP ドライバーは ObjectId 値を持つ _id フィールドを各ドキュメントに追加します。「挿入動作」を参照してください。

pymongo.collection.Collection.insert_many は、複数ドキュメントをコレクションに挿入できます。ドキュメントのイテラブルをメソッドに渡します。

次の例では、3 つの新しいドキュメントを inventory コレクションに挿入します。ドキュメントで _id フィールドが指定されていない場合、PyMongo ドライバーは ObjectId 値を持つ _id フィールドを各ドキュメントに追加します。挿入動作を参照してください。

Mongo::Collection#insert_many() は、複数ドキュメントをコレクションに挿入できます。ドキュメントの配列をメソッドに渡します。

次の例では、3 つの新しいドキュメントを inventory コレクションに挿入します。ドキュメントで _id フィールドが指定されていない場合、Ruby ドライバーは ObjectId 値を持つ _id フィールドを各ドキュメントに追加します。挿入動作を参照してください。

collection.insertMany() は、複数ドキュメントをコレクションに挿入できます。

次の例では、3 つの新しいドキュメントを inventory コレクションに挿入します。ドキュメントに _id フィールドが指定されていない場合、Scala ドライバーは ObjectId 値を持つ _id フィールドを各ドキュメントに追加します。「挿入動作」を参照してください。

db.inventory.insertMany([
{ item: "journal", qty: 25, tags: ["blank", "red"], size: { h: 14, w: 21, uom: "cm" } },
{ item: "mat", qty: 85, tags: ["gray"], size: { h: 27.9, w: 35.5, uom: "cm" } },
{ item: "mousepad", qty: 25, tags: ["gel", "blue"], size: { h: 19, w: 22.85, uom: "cm" } }
])
[
{ "item": "canvas", "qty": 100, "size": { "h": 28, "w": 35.5, "uom": "cm" }, "status": "A" },
{ "item": "journal", "qty": 25, "size": { "h": 14, "w": 21, "uom": "cm" }, "status": "A" },
{ "item": "mat", "qty": 85, "size": { "h": 27.9, "w": 35.5, "uom": "cm" }, "status": "A" },
{ "item": "mousepad", "qty": 25, "size": { "h": 19, "w": 22.85, "uom": "cm" }, "status": "P" },
{ "item": "notebook", "qty": 50, "size": { "h": 8.5, "w": 11, "uom": "in" }, "status": "P" },
{ "item": "paper", "qty": 100, "size": { "h": 8.5, "w": 11, "uom": "in" }, "status": "D" },
{ "item": "planner", "qty": 75, "size": { "h": 22.85, "w": 30, "uom": "cm" }, "status": "D" },
{ "item": "postcard", "qty": 45, "size": { "h": 10, "w": 15.25, "uom": "cm" }, "status": "A" },
{ "item": "sketchbook", "qty": 80, "size": { "h": 14, "w": 21, "uom": "cm" }, "status": "A" },
{ "item": "sketch pad", "qty": 95, "size": { "h": 22.85, "w": 30.5, "uom": "cm" }, "status": "A" }
]

MongoDB Compass を使用してドキュメントを挿入する手順については、「ドキュメントの挿入」を参照してください。

mongoc_collection_t *collection;
mongoc_bulk_operation_t *bulk;
bson_t *doc;
bool r;
bson_error_t error;
bson_t reply;
collection = mongoc_database_get_collection (db, "inventory");
bulk = mongoc_collection_create_bulk_operation_with_opts (collection, NULL);
doc = BCON_NEW (
"item", BCON_UTF8 ("journal"),
"qty", BCON_INT64 (25),
"tags", "[",
BCON_UTF8 ("blank"), BCON_UTF8 ("red"),
"]",
"size", "{",
"h", BCON_DOUBLE (14),
"w", BCON_DOUBLE (21),
"uom", BCON_UTF8 ("cm"),
"}");
r = mongoc_bulk_operation_insert_with_opts (bulk, doc, NULL, &error);
bson_destroy (doc);
if (!r) {
MONGOC_ERROR ("%s\n", error.message);
goto done;
}
doc = BCON_NEW (
"item", BCON_UTF8 ("mat"),
"qty", BCON_INT64 (85),
"tags", "[",
BCON_UTF8 ("gray"),
"]",
"size", "{",
"h", BCON_DOUBLE (27.9),
"w", BCON_DOUBLE (35.5),
"uom", BCON_UTF8 ("cm"),
"}");
r = mongoc_bulk_operation_insert_with_opts (bulk, doc, NULL, &error);
bson_destroy (doc);
if (!r) {
MONGOC_ERROR ("%s\n", error.message);
goto done;
}
doc = BCON_NEW (
"item", BCON_UTF8 ("mousepad"),
"qty", BCON_INT64 (25),
"tags", "[",
BCON_UTF8 ("gel"), BCON_UTF8 ("blue"),
"]",
"size", "{",
"h", BCON_DOUBLE (19),
"w", BCON_DOUBLE (22.85),
"uom", BCON_UTF8 ("cm"),
"}");
r = mongoc_bulk_operation_insert_with_opts (bulk, doc, NULL, &error);
bson_destroy (doc);
if (!r) {
MONGOC_ERROR ("%s\n", error.message);
goto done;
}
/* "reply" is initialized on success or error */
r = (bool) mongoc_bulk_operation_execute (bulk, &reply, &error);
if (!r) {
MONGOC_ERROR ("%s\n", error.message);
}
var documents = new BsonDocument[]
{
new BsonDocument
{
{ "item", "journal" },
{ "qty", 25 },
{ "tags", new BsonArray { "blank", "red" } },
{ "size", new BsonDocument { { "h", 14 }, { "w", 21 }, { "uom", "cm"} } }
},
new BsonDocument
{
{ "item", "mat" },
{ "qty", 85 },
{ "tags", new BsonArray { "gray" } },
{ "size", new BsonDocument { { "h", 27.9 }, { "w", 35.5 }, { "uom", "cm"} } }
},
new BsonDocument
{
{ "item", "mousepad" },
{ "qty", 25 },
{ "tags", new BsonArray { "gel", "blue" } },
{ "size", new BsonDocument { { "h", 19 }, { "w", 22.85 }, { "uom", "cm"} } }
},
};
collection.InsertMany(documents);
result, err := coll.InsertMany(
context.TODO(),
[]interface{}{
bson.D{
{"item", "journal"},
{"qty", int32(25)},
{"tags", bson.A{"blank", "red"}},
{"size", bson.D{
{"h", 14},
{"w", 21},
{"uom", "cm"},
}},
},
bson.D{
{"item", "mat"},
{"qty", int32(25)},
{"tags", bson.A{"gray"}},
{"size", bson.D{
{"h", 27.9},
{"w", 35.5},
{"uom", "cm"},
}},
},
bson.D{
{"item", "mousepad"},
{"qty", 25},
{"tags", bson.A{"gel", "blue"}},
{"size", bson.D{
{"h", 19},
{"w", 22.85},
{"uom", "cm"},
}},
},
})
Document journal = new Document("item", "journal")
.append("qty", 25)
.append("tags", asList("blank", "red"));
Document journalSize = new Document("h", 14)
.append("w", 21)
.append("uom", "cm");
journal.put("size", journalSize);
Document mat = new Document("item", "mat")
.append("qty", 85)
.append("tags", singletonList("gray"));
Document matSize = new Document("h", 27.9)
.append("w", 35.5)
.append("uom", "cm");
mat.put("size", matSize);
Document mousePad = new Document("item", "mousePad")
.append("qty", 25)
.append("tags", asList("gel", "blue"));
Document mousePadSize = new Document("h", 19)
.append("w", 22.85)
.append("uom", "cm");
mousePad.put("size", mousePadSize);
Publisher<Success> insertManyPublisher = collection.insertMany(asList(journal, mat, mousePad));
Document journal = new Document("item", "journal")
.append("qty", 25)
.append("tags", asList("blank", "red"));
Document journalSize = new Document("h", 14)
.append("w", 21)
.append("uom", "cm");
journal.put("size", journalSize);
Document mat = new Document("item", "mat")
.append("qty", 85)
.append("tags", singletonList("gray"));
Document matSize = new Document("h", 27.9)
.append("w", 35.5)
.append("uom", "cm");
mat.put("size", matSize);
Document mousePad = new Document("item", "mousePad")
.append("qty", 25)
.append("tags", asList("gel", "blue"));
Document mousePadSize = new Document("h", 19)
.append("w", 22.85)
.append("uom", "cm");
mousePad.put("size", mousePadSize);
collection.insertMany(asList(journal, mat, mousePad));
results = collection.insertMany(
listOf(
Document("item", "journal")
.append("qty", 25)
.append("tags", listOf("blank", "red"))
.append("size", Document("h", 14)
.append("w", 21)
.append("uom", "cm")
),
Document("item", "mat")
.append("qty", 25)
.append("tags", listOf("gray"))
.append("size", Document("h", 27.9)
.append("w", 35.5)
.append("uom", "cm")
),
Document("item", "mousepad")
.append("qty", 25)
.append("tags", listOf("gel", "blue"))
.append("size", Document("h", 19)
.append("w", 22.85)
.append("uom", "cm")
)
)
await db.inventory.insert_many(
[
{
"item": "journal",
"qty": 25,
"tags": ["blank", "red"],
"size": {"h": 14, "w": 21, "uom": "cm"},
},
{
"item": "mat",
"qty": 85,
"tags": ["gray"],
"size": {"h": 27.9, "w": 35.5, "uom": "cm"},
},
{
"item": "mousepad",
"qty": 25,
"tags": ["gel", "blue"],
"size": {"h": 19, "w": 22.85, "uom": "cm"},
},
]
)
await db.collection('inventory').insertMany([
{
item: 'journal',
qty: 25,
tags: ['blank', 'red'],
size: { h: 14, w: 21, uom: 'cm' }
},
{
item: 'mat',
qty: 85,
tags: ['gray'],
size: { h: 27.9, w: 35.5, uom: 'cm' }
},
{
item: 'mousepad',
qty: 25,
tags: ['gel', 'blue'],
size: { h: 19, w: 22.85, uom: 'cm' }
}
]);
$db->coll("inventory")->insert_many(
[
{
item => "journal",
qty => 25,
tags => [ "blank", "red" ],
size => { h => 14, w => 21, uom => "cm" }
},
{
item => "mat",
qty => 85,
tags => ["gray"],
size => { h => 27.9, w => 35.5, uom => "cm" }
},
{
item => "mousepad",
qty => 25,
tags => [ "gel", "blue" ],
size => { h => 19, w => 22.85, uom => "cm" }
}
]
);
$insertManyResult = $db->inventory->insertMany([
[
'item' => 'journal',
'qty' => 25,
'tags' => ['blank', 'red'],
'size' => ['h' => 14, 'w' => 21, 'uom' => 'cm'],
],
[
'item' => 'mat',
'qty' => 85,
'tags' => ['gray'],
'size' => ['h' => 27.9, 'w' => 35.5, 'uom' => 'cm'],
],
[
'item' => 'mousepad',
'qty' => 25,
'tags' => ['gel', 'blue'],
'size' => ['h' => 19, 'w' => 22.85, 'uom' => 'cm'],
],
]);
db.inventory.insert_many(
[
{
"item": "journal",
"qty": 25,
"tags": ["blank", "red"],
"size": {"h": 14, "w": 21, "uom": "cm"},
},
{
"item": "mat",
"qty": 85,
"tags": ["gray"],
"size": {"h": 27.9, "w": 35.5, "uom": "cm"},
},
{
"item": "mousepad",
"qty": 25,
"tags": ["gel", "blue"],
"size": {"h": 19, "w": 22.85, "uom": "cm"},
},
]
)
client[:inventory].insert_many([{ item: 'journal',
qty: 25,
tags: ['blank', 'red'],
size: { h: 14, w: 21, uom: 'cm' }
},
{ item: 'mat',
qty: 85,
tags: ['gray'],
size: { h: 27.9, w: 35.5, uom: 'cm' }
},
{ item: 'mousepad',
qty: 25,
tags: ['gel', 'blue'],
size: { h: 19, w: 22.85, uom: 'cm' }
}
])
collection.insertMany(Seq(
Document("item" -> "journal", "qty" -> 25, "tags" -> Seq("blank", "red"), "size" -> Document("h" -> 14, "w" -> 21, "uom" -> "cm")),
Document("item" -> "mat", "qty" -> 85, "tags" -> Seq("gray"), "size" -> Document("h" -> 27.9, "w" -> 35.5, "uom" -> "cm")),
Document("item" -> "mousepad", "qty" -> 25, "tags" -> Seq("gel", "blue"), "size" -> Document("h" -> 19, "w" -> 22.85, "uom" -> "cm"))
)).execute()

insertMany() は、新しく挿入されたドキュメントの _id フィールド値を含むドキュメントを返します。例については、リファレンスを参照してください。

挿入されたドキュメントを検索するには、次のようにコレクションをクエリします。

mongoc_bulk_operation_insert_with_opts trueは、成功した場合はfalse を返し、無効な引数が渡された場合は を返します。

挿入されたドキュメントを検索するには、 mongoc_collection_find_with_opts を使用します コレクションをクエリするには、次の ようにします。

挿入されたドキュメントを検索するには、次のようにコレクションをクエリします。

挿入されたドキュメントを検索するには、次のようにコレクションをクエリします。

com.mongodb.reactivestreams.client.MongoCollection.html.insertMany 出版社 を返します オブジェクト。Publisherは、サブスクライブ者がデータをリクエストするときにドキュメントをコレクションに挿入します。

挿入されたドキュメントを検索するには、次のようにコレクションをクエリします。

挿入されたドキュメントを検索するには、次のようにコレクションをクエリします。

MongoCollection.insertMany()InsertManyResult インスタンスを返します。InsertManyResultinsertedIdsフィールドには、挿入されたドキュメントの_id値が含まれます。

挿入されたドキュメントを検索するには、次のようにコレクションをクエリします。

insert_manypymongo.results.InsertManyResultinserted_ids_id のインスタンスを返します の フィールドは、新しく挿入された各ドキュメントの を含むリストです。

挿入されたドキュメントを検索するには、次のようにコレクションをクエリします。

insertMany() は、result を提供する Promise を返します。result.insertedIds フィールドには、新しく挿入された各ドキュメントの_id を持つ配列が含まれます。

挿入されたドキュメントを検索するには、次のようにコレクションをクエリします。

正常に挿入が行われると、insert_many() メソッドは、MongoDB::InsertManyResult のインスタンスを返します。なお、その inserted_ids 属性は、新しく挿入された各ドキュメントの _id を含むリストです。

挿入されたドキュメントを検索するには、次のようにコレクションをクエリします。

正常に挿入が行われると、 insertMany()メソッドは MongoDB\\InsertManyResult のインスタンスを返します。なお、その getInsertedIds() メソッドは、新しく挿入された各ドキュメントの _id を返します。

挿入されたドキュメントを検索するには、次のようにコレクションをクエリします。

insert_manypymongo.results.InsertManyResultinserted_ids_id のインスタンスを返します の フィールドは、新しく挿入された各ドキュメントの を含むリストです。

挿入されたドキュメントを検索するには、次のようにコレクションをクエリします。

正常に挿入が行われると、insert_many() メソッドは、Mongo::BulkWrite::Result のインスタンスを返します。なお、その inserted_ids 属性は、新しく挿入された各ドキュメントの _id を含むリストです。

挿入されたドキュメントを検索するには、次のようにコレクションをクエリします。

正常に挿入が行われると、insertMany() メソッドは、操作が完了したときを表す型パラメーター、または com.mongodb.DuplicateKeyException もしくは com.mongodb.MongoException のいずれかを持つ Observable を返します。

挿入されたドキュメントを検索するには、次のようにコレクションをクエリします。

db.inventory.find( {} )
Compass がコレクション内のすべてのドキュメントを選択
mongoc_collection_t *collection;
bson_t *filter;
mongoc_cursor_t *cursor;
collection = mongoc_database_get_collection (db, "inventory");
filter = BCON_NEW (NULL);
cursor = mongoc_collection_find_with_opts (collection, filter, NULL, NULL);

必要に応じて、次のメソッドを呼び出して、開いているリソースもクリーンアップするようにします。

var filter = Builders<BsonDocument>.Filter.Empty;
var result = collection.Find(filter).ToList();
cursor, err := coll.Find(
context.TODO(),
bson.D{},
)
FindPublisher<Document> findPublisher = collection.find(new Document());
FindIterable<Document> findIterable = collection.find(new Document());
val flowInsertMany = collection
.find(empty())
cursor = db.inventory.find({})
const cursor = db.collection('inventory').find({});
$cursor = $db->coll("inventory")->find( {} );
$cursor = $db->inventory->find([]);
cursor = db.inventory.find({})
client[:inventory].find({})
var findObservable = collection.find(Document())

現在コレクションが存在しない場合は、挿入操作によってコレクションが作成されます。

MongoDB では、コレクション内に保存される各ドキュメントにはプライマリキーとして機能するユニークな _id フィールドが必要です。挿入されたドキュメントで _id フィールドが省略されている場合、MongoDB ドライバーが _id フィールドの ObjectId を自動的に生成します。

上記は、アップサート: true に設定した更新操作を通じて挿入されるドキュメントにも適用されます。

MongoDB のすべての書込み (write) 操作は、単一のドキュメントのレベルでアトミックです。MongoDB とアトミック性の詳細については、「原子性とトランザクション」を参照してください。

書込み保証 (write concern) では、書込み操作に対して MongoDB から要求される確認応答のレベルを指定できます。詳細については、「書込み保証 (write concern)」を参照してください。

Tip

以下も参照してください。

戻る

CRUD 操作