No MongoDB o
db.collection.insertOne() O método insere um único documento em uma coleção. A
collection parte é o nome da coleção na qual inserir o documento. Exemplo
Aqui está um exemplo de inserção de um documento em uma coleção chamada
pets :db.pets.insertOne( {
name: "Scratch",
type: "Cat"
} ) Resultado:
{
"acknowledged" : true,
"insertedId" : ObjectId("5fe2d15637b49e0faf1af214")
} O
db.collection.insertOne() O método retorna um documento contendo:- Um booleano
acknowledgedcomotruese a operação foi executada com preocupação de gravação oufalsese a preocupação de gravação foi desativada. - Um campo
insertedIdcom o_idvalor do documento inserido.
Agora, se usarmos
db.collection.find() para examinar a coleção, veremos o documento recém-adicionado. db.pets.find().pretty() Resultado:
{
"_id" : ObjectId("5fe2d15637b49e0faf1af214"),
"name" : "Scratch",
"type" : "Cat"
} Eu também usei
pretty() para formatar o documento para que seja mais fácil de ler. Nesse caso, nosso documento é o único da coleção e, portanto, apenas um documento foi devolvido.
No entanto, se a coleção fosse grande, poderíamos usar o ID (fornecido no documento de retorno quando fizemos a inserção) para restringir o resultado apenas a este documento.
db.pets.find({_id: ObjectId("5fe2d15637b49e0faf1af214")} ).pretty() Resultado:
{
"_id" : ObjectId("5fe2d15637b49e0faf1af214"),
"name" : "Scratch",
"type" : "Cat"
} E se a coleção não existir?
Se a coleção não existir, ela será criada e o documento será adicionado a ela.
Se a coleção já existir, o documento é simplesmente adicionado a ela.
Quando criei este exemplo, a coleção não existia e, portanto, a operação de inserção a criou.
O _id Campo
O
_id field é um campo identificador exclusivo no MongoDB. Você pode fornecer seu próprio
_id campo no documento. Se você fizer isso, seu valor deverá ser exclusivo na coleção. Isso ocorre porque seu _id campo será usado como o identificador exclusivo do documento. Aqui está um exemplo de como inserir um documento com seu próprio
_id campo. db.pets.insertOne( {
_id: 1,
name: "Fetch",
type: "Dog"
} ) Resultado:
{ "acknowledged" : true, "insertedId" : 1 } Agora vamos olhar para a coleção novamente.
db.pets.find() Resultado:
{ "_id" : ObjectId("5fe2d15637b49e0faf1af214"), "name" : "Scratch", "type" : "Cat" }
{ "_id" : 1, "name" : "Fetch", "type" : "Dog" } Mais informações
O
db.collection.insertOne() O método também aceita um writeConcern argumento, que descreve o nível de reconhecimento solicitado do MongoDB para operações de gravação. Consulte a documentação do MongoDB para
db.collection.insertOne() Para maiores informações.