MongoDB - Dokument einfügen
In diesem Kapitel erfahren Sie, wie Sie ein Dokument in die MongoDB-Sammlung einfügen.
Die insert () -Methode
Um Daten in die MongoDB-Sammlung einzufügen, müssen Sie MongoDBs verwenden insert() oder save() Methode.
Syntax
Die grundlegende Syntax von insert() Befehl ist wie folgt -
>db.COLLECTION_NAME.insert(document)
Beispiel
> db.users.insert({
... _id : ObjectId("507f191e810c19729de860ea"),
... title: "MongoDB Overview",
... description: "MongoDB is no sql database",
... by: "tutorials point",
... url: "http://www.tutorialspoint.com",
... tags: ['mongodb', 'database', 'NoSQL'],
... likes: 100
... })
WriteResult({ "nInserted" : 1 })
>
Hier mycolist unser Sammlungsname, wie er im vorherigen Kapitel erstellt wurde. Wenn die Sammlung nicht in der Datenbank vorhanden ist, erstellt MongoDB diese Sammlung und fügt ein Dokument ein.
Wenn wir im eingefügten Dokument den Parameter _id nicht angeben, weist MongoDB diesem Dokument eine eindeutige ObjectId zu.
_id ist eine 12-Byte-Hexadezimalzahl, die für jedes Dokument in einer Sammlung eindeutig ist. 12 Bytes werden wie folgt aufgeteilt:
_id: ObjectId(4 bytes timestamp, 3 bytes machine id, 2 bytes process id, 3 bytes incrementer)
Sie können auch ein Array von Dokumenten an die Methode insert () übergeben, wie unten gezeigt:
> db.createCollection("post")
> db.post.insert([
{
title: "MongoDB Overview",
description: "MongoDB is no SQL database",
by: "tutorials point",
url: "http://www.tutorialspoint.com",
tags: ["mongodb", "database", "NoSQL"],
likes: 100
},
{
title: "NoSQL Database",
description: "NoSQL database doesn't have tables",
by: "tutorials point",
url: "http://www.tutorialspoint.com",
tags: ["mongodb", "database", "NoSQL"],
likes: 20,
comments: [
{
user:"user1",
message: "My first comment",
dateCreated: new Date(2013,11,10,2,35),
like: 0
}
]
}
])
BulkWriteResult({
"writeErrors" : [ ],
"writeConcernErrors" : [ ],
"nInserted" : 2,
"nUpserted" : 0,
"nMatched" : 0,
"nModified" : 0,
"nRemoved" : 0,
"upserted" : [ ]
})
>
Zum Einfügen des Dokuments können Sie verwenden db.post.save(document)ebenfalls. Wenn Sie nicht angeben_id im Dokument dann save() Methode funktioniert genauso wie insert()Methode. Wenn Sie _id angeben, werden die gesamten Daten des Dokuments ersetzt, das _id enthält, wie in der Methode save () angegeben.
Die Methode insertOne ()
Wenn Sie nur ein Dokument in eine Sammlung einfügen müssen, können Sie diese Methode verwenden.
Syntax
Die grundlegende Syntax des Befehls insert () lautet wie folgt:
>db.COLLECTION_NAME.insertOne(document)
Beispiel
Im folgenden Beispiel wird eine neue Sammlung mit dem Namen empDetails erstellt und ein Dokument mit der Methode insertOne () eingefügt.
> db.createCollection("empDetails")
{ "ok" : 1 }
> db.empDetails.insertOne(
{
First_Name: "Radhika",
Last_Name: "Sharma",
Date_Of_Birth: "1995-09-26",
e_mail: "[email protected]",
phone: "9848022338"
})
{
"acknowledged" : true,
"insertedId" : ObjectId("5dd62b4070fb13eec3963bea")
}
>
Die Methode insertMany ()
Sie können mehrere Dokumente mit der Methode insertMany () einfügen. An diese Methode müssen Sie eine Reihe von Dokumenten übergeben.
Beispiel
Im folgenden Beispiel werden drei verschiedene Dokumente mit der Methode insertMany () in die empDetails-Auflistung eingefügt.
> db.empDetails.insertMany(
[
{
First_Name: "Radhika",
Last_Name: "Sharma",
Date_Of_Birth: "1995-09-26",
e_mail: "[email protected]",
phone: "9000012345"
},
{
First_Name: "Rachel",
Last_Name: "Christopher",
Date_Of_Birth: "1990-02-16",
e_mail: "[email protected]",
phone: "9000054321"
},
{
First_Name: "Fathima",
Last_Name: "Sheik",
Date_Of_Birth: "1990-02-16",
e_mail: "[email protected]",
phone: "9000054321"
}
]
)
{
"acknowledged" : true,
"insertedIds" : [
ObjectId("5dd631f270fb13eec3963bed"),
ObjectId("5dd631f270fb13eec3963bee"),
ObjectId("5dd631f270fb13eec3963bef")
]
}
>