English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Tutorial Avançado do MongoDB
neste capítulo, vamos aprender como inserir documentos em uma coleção do MongoDB.método insert() Para inserir dados em uma coleção do MongoDB, você precisa usar o oumétodo save()
método insert()A sintaxe básica do comando é a seguinte-
> db.COLLECTION_NAME.insert(document)
> db.users.insert({ ... _id : ObjectId("507f191e810c19729860ea ... title: "Visão Geral do MongoDB", ... description: "MongoDB é um banco de dados não sql", ... by: "Tutorial Básico", ... url: "https://pt.oldtoolbag.com", ... tags: ['mongodb', 'database', 'NoSQL'], ... likes: 100 ... }) WriteResult({ "nInserted": 1 }) >
Este é o nome da coleção que criamos no capítulo anterior mycol . Se a coleção não existir no banco de dados, o MongoDB criará essa coleção e inserirá o documento nele.
No documento inserido, se o parâmetro _id não for especificado, o MongoDB atribuirá um ObjectId único para esse documento.
_id é12Os números hexadecimais dos bytes, para cada documento na coleção, são únicos.12Os bytes são divididos da seguinte forma:
_id: ObjectId(4 bytes timestamp, 3 bytes machine id, 2 bytes process id, 3 bytes incrementer)
Também é possível passar um array de documentos para o método insert(), conforme exemplo a seguir:
> db.createCollection("post") > db.post.insert([ { title: "Visão Geral do MongoDB", description: "MongoDB não é um banco de dados SQL", por: "Manual Básico" url: "http://pt.oldtoolbag.com", tags: ["mongodb", "database", "NoSQL"], gostos: 100 } { título: "Banco de Dados NoSQL" descrição: "Bancos de dados NoSQL não têm tabelas", por: "Manual Básico" url: "http://pt.oldtoolbag.com", tags: ["mongodb", "database", "NoSQL"], gostos: 20, comentários: [ { usuário: "user"1", mensagem: "Meu primeiro comentário", dataCreated: new Date(2013,11,10,2,35, como: 0 } ] } }) BulkWriteResult({ "writeErrors": [], "writeConcernErrors": [], "nInserted": 2, "nUpserted": 0, "nMatched": 0, "nModified": 0, "nRemoved": 0, "upserted": [], }) >
Para inserir um documento, você também pode usardb.post.save(document). Se você não especificar _identão método save()comMétodo insert()Idêntico. Se você especificar _id, ele substituirá o documento inteiro especificado no método save() que contém _id.
Se você precisar inserir apenas um documento na coleção, você pode usar este método.
A sintaxe básica do comando insertOne() é a seguinte:
> db.COLLECTION_NAME.insertOne(document)
A seguir, este exemplo cria uma nova coleção chamada empDetails e usa o método insertOne() para inserir um documento.
> 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") } >
Você pode usar o método insertMany() para inserir múltiplos documentos. Para este método, você precisa passar um array de documentos.
A seguir, este exemplo utiliza o método insertMany() para inserir três documentos diferentes na coleção empDetails.
> 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") ] } >