V MongoDB db.collection.insertOne() metoda vloží jeden dokument do kolekce.
collection část je název kolekce, do které se má dokument vložit.
Příklad
Zde je příklad vložení dokumentu do kolekce s názvem pets :
db.pets.insertOne( {
name: "Scratch",
type: "Cat"
} ) Výsledek:
{
"acknowledged" : true,
"insertedId" : ObjectId("5fe2d15637b49e0faf1af214")
}
db.collection.insertOne() metoda vrací dokument obsahující:
- Logická hodnota
acknowledgedjakotruepokud operace proběhla s obavami o zápis nebofalsepokud bylo zakázáno psaní. - Pole
insertedIds_idhodnotu vloženého dokumentu.
Nyní, když použijeme db.collection.find() abychom se podívali do sbírky, uvidíme nově přidaný dokument.
db.pets.find().pretty() Výsledek:
{
"_id" : ObjectId("5fe2d15637b49e0faf1af214"),
"name" : "Scratch",
"type" : "Cat"
}
Také jsem použil pretty() naformátujte dokument tak, aby byl snazší číst.
V tomto případě je náš dokument jediný ve sbírce, a tak byl vrácen pouze jeden dokument.
Pokud by však byla sbírka velká, mohli bychom použít ID (uvedené v návratovém dokumentu při vkládání) k zúžení výsledku pouze na tento dokument.
db.pets.find({_id: ObjectId("5fe2d15637b49e0faf1af214")} ).pretty() Výsledek:
{
"_id" : ObjectId("5fe2d15637b49e0faf1af214"),
"name" : "Scratch",
"type" : "Cat"
} Co když sbírka neexistuje?
Pokud kolekce neexistuje, je vytvořena a dokument je do ní přidán.
Pokud kolekce již existuje, dokument se do ní jednoduše přidá.
Když jsem vytvořil tento příklad, kolekce neexistovala, a tak ji vytvořila operace vložení.
_id pole
_id pole je pole jedinečného identifikátoru v MongoDB.
Můžete zadat své vlastní _id pole v dokumentu. Pokud tak učiníte, jeho hodnota musí být v rámci kolekce jedinečná. Důvodem je vaše _id pole bude použito jako jedinečný identifikátor dokumentu.
Zde je příklad vložení dokumentu s vlastním _id pole.
db.pets.insertOne( {
_id: 1,
name: "Fetch",
type: "Dog"
} ) Výsledek:
{ "acknowledged" : true, "insertedId" : 1 } Nyní se znovu podíváme na sbírku.
db.pets.find() Výsledek:
{ "_id" : ObjectId("5fe2d15637b49e0faf1af214"), "name" : "Scratch", "type" : "Cat" }
{ "_id" : 1, "name" : "Fetch", "type" : "Dog" } Další informace
db.collection.insertOne() metoda také přijímá writeConcern argument, který popisuje úroveň potvrzení požadovaného od MongoDB pro operace zápisu.
Viz dokumentaci MongoDB pro db.collection.insertOne() pro více informací.